当前位置: 首页 > 科技观察

程序员们,请不要看低级零代码

时间:2023-03-17 21:36:50 科技观察

在我们的业务过程中,我们不可避免地开始与开发者社区发生一些冲突,更准确地说,是一些误解。我们对此也有心理准备。当然,可爱的程序员们,当我们向潜在客户演示明道云时,我几乎能听到几个程序员的想法。有时候,客户端不同功能的人面对面争论是否采用零代码系统,我有点尴尬。他们通常很微妙,他们不会说——“零代码平台有什么用?如果你不用写代码就可以开发软件,我们为什么要这样做?”。他们不会说出来,但我们心里都知道。有外行好心建议我们这么果断把产品定位名称改成“低代码”而不是“零代码”。因为叫low-code,至少不会让程序员太反感,觉得至少还有用的空间。事实上,明道云还包含了几个低代码模块,可以让一些高级用户使用脚本语言简化配置步骤,使用API??进行对接开发,这些都离不开训练有素的程序员。但这不是重点。我们要实现的是让活跃的程序员做一些真正有价值的工作,彻底减少那些重复的开发任务。称为“零代码”,它确实包含营销宣言的一些意图元素。零代码平台将取代什么样的软件开发工作?概括来说,以明道云为代表的零代码平台主要应用于企业中后台应用领域,尤其是与数据管理、工作流相关的应用品类。它们一般用于企业内部,有时也用于外部客户和合作伙伴。这些应用程序都是围绕数据的增删改查和灵活的工作流管理而构建的,用户通过浏览器和移动设备使用它们。这个概括确实涵盖了企业软件行业的很多场景。为了让读者更好的理解,我再举一些更具体的场景:1.基于关系型数据库的业务管理应用是指围绕不同行业的核心业务构建的业务管理系统,例如:流通行业的进销存和库存制造生产执行、物资管理、设备管理、现代服务业、项目管理、教育行业、教师、学生、课程管理、设备工程行业、采购、安装和服务管理、一般B2B行业销售管理等。大部分软件在此category它们看起来几乎一模一样。在网页版中,功能导航通常通过顶部和左侧菜单进行,主界面以表格形式列出数据条目。打开记录详情,可以进行各种数据操作,查看关联数据。正是因为这种相似性,零代码平台才能大显身手,将所有这些应用以统一的组装方式实现,从而从头到尾避开原生软件的开发过程。2.使用移动应用收集数据的应用制造、工程、零售等行业的应用需要特定的职能人员从一线收集数据。3、使用API??接口写入数据,搭建管理看板应用。从多个异构系统中抽取数据,存入统一的数据中心,结合本产品的自定义仪表板功能,构建管理驾驶舱的应用需求。该应用场景以另一种方式替代了BI+ETL方案。4、针对特定业务环节需求的部门级小应用由于零代码系统带来的易用性和免代码开发的特点,用户企业可以直接构建或主导一些简单的小应用。业务部门的开发人员。在统一的应用管理能力下,影子IT问题也可以同时得到防范。5.为流程自动化而构建的应用基于该产品的自动化工作流,可以突破以前需要人工协调的间歇性工作流,例如:订单、交货和发票的自动收敛时间触发的清单生成、设备维护保修提醒,合同到期提醒等基于销售流程和营销流程之间的潜在客户和潜在客户培养的自动标记等。数据,批准和填充节点的人控工作流应用程序。2.零码不擅长的场景除了这些正面的分类,还有一些负面的清单。这意味着零代码平台不擅长解决的场景有很多,比如:1.市场规模巨大,场景一致,通用性高的品类,比如协作应用和通讯应用。当然,由于这些市场容量巨大,已经有大量成熟的厂商提供产品。您根本不需要使用零代码构建它。要想参与到这些市场的竞争中,就必须拥有一支技术过硬的软件产品开发团队,以便及时应对市场竞争。2.在特定的行业,依靠非常专业的计算或专业的观点来提供服务,比如酒店行业的动态房价管理,餐饮行业的收银台安排,围绕制造业的工业控制和特殊逻辑调度,广告数据管理围绕营销目标等。这就像拧无数个固定直径为3毫米的螺母,所以没有必要使用万能扳手。3.面向消费者的应用很好理解。2C应用非常多样化,零代码实现难度大。当然,那些简单的信息展示或者购物车小程序应用就另当别论了。许多小程序生成平台本质上是零代码平台。我相信这个列表并不详尽,这个市场总是有各种特殊情况的长尾,以至于每一个零星的需求都必须专门针对架构、设计和开发。3.为什么零代码比写代码好?一旦你要实现的场景和我们的优势方向相吻合,那么我敢说用零代码平台搭建的应用,比大多数普通软件开发团队开发出来的应用要好。好多了。我这样说可能有点不礼貌,但我们都必须客观。优秀优秀的软件开发团队总是有限的,不会开发出每天增删改查数据的企业应用。把这些任务交给我们比较合适。1.免除交互体验设计流程零代码平台承担了基础交互设计的所有工作,专注于数据输入、查询、展示等一系列动作。应用零代码平台后,无需设计和增强这些交互体验的细节。例如:复杂窗体的每个控件,应该使用什么样的样式,保持什么样的间距,是否支持键盘切换焦点等等,这些细节往往会消耗前端程序员大量的重复劳动。现在,一切都过去了。我们的一次性范式设计考虑到了这一点。有人说,如果前端页面不能个性化,得到的应用不是很相似吗?确实如此,但相似是好的重复,而不是粗略的复制。我们可以花几天的时间去优化一个日期输入控件,这不是所有应用程序前端开发都可以承受的成本。而且,即使不使用零代码平台,应用前端框架也绝对不可能从头设计,总会应用一些现成的成熟框架。没看到几乎所有的后台系统都用了阿里蚂蚁吗?在企业的中后台应用中,最重要的目标就是界面好看,功能简单易用。因此,高质量的相似度是解决这个问题的手段。2)免除后端架构流程前端开发容易出现重复性工作,后端数据架构也一样。为了使企业应用程序满足业务数据管理和工作流的需要,开发人员需要设计正确合理的数据结构。这项工作,无论是零代码还是传统的原生开发,都是需要的。然而,除了数据模型,原生开发项目还需要架构师设计合理的数据存储过程和功能(可重用的程序结构),这依赖于经验丰富的架构师。通过零代码平台,将所有后端架构工作转化为可视化配置流程,数据结构由表单建立,工作流由触发器和节点配置,权限体系基于角色,高度粒度化权限详细信息。组合。虽然这些工作不会自动完成,但不再依赖狭义的软件架构师,完成这些工作的时间成本也大大降低。这里要提到的另一个重要因素是业务变化带来的后端架构调整的噩梦。一旦业务流程产生了新的需求,大多数情况下,仅仅修改几行前端代码是无法解决的,需要对后端架构进行相应的调整。这在以往是很多定制开发软件项目的危机,因为往往需要的时候找不到人,或者找不到完善的文档,导致后续的低质量代码越积越多-向上修改。有零代码系统,无非调整配置即可完成。这是原生开发永远达不到的效果。3.简化测试过程。使用零代码构建的应用程序也需要进行测试,但用户只需要关注数据处理的正确性,正确一次,每次。传统软件的测试要复杂得多。首先,要有开发者自己完成的白盒测试,需求方和测试人员共同编写黑盒测试用例列表。光是这一件事,就得靠专业人士,成本非常高,跨专业交流也麻烦。一个完整的测试还需要涵盖性能、兼容性等,相当费时费力。因此,大多数定制软件开发没有可靠的测试过程。作为一款只有一个用户的定制软件,消除软件缺陷的过程非常漫长。4、应用分发豁免开发已经脱了一层皮,但一个终于面世的企业应用,要让员工开始正常使用,还是有一个“组织内分发”的过程。这个过程通常比想象的要复杂,尤其是那些需要根据不同角色分配不同权限的复杂系统。软件开发完成后,需要引导用户注册账号、分配角色,用户才能真正登录系统。目前越来越多的企业开始使用钉钉、企业微信等平台,这意味着开发的企业应用最好能适配这些平台,至少能实现用户账号和消息的打通通知。零代码系统一般有完整的企业管理后台,提供用户、部门、职能角色、汇报关系配置,也预接入钉钉、企业微信等平台。这样,零代码构建的应用程序不仅可以快速交付,而且可以轻松部署给用户。如果一个应用的角色需要对应企业的财务出纳,配置后,只要有人加入财务出纳职位,就可以自动获得该应用的访问权限和相应的权限。5、让需求沟通更容易在开发企业软件的过程中,最痛苦和最昂贵的过程真的不是写代码,而是需求沟通,让开发者了解软件的应用目标,掌握必要的背景知识。在制造过程管理、物流管理、物料管理、设备管理、仓库管理和财务信息交换等稍微复杂一点的企业软件领域,软件设计的源头完全来自于企业管理的最佳实践。没有企业的运营知识,是绝对不可能开发出可用的企业软件的。于是乎,企业软件开发的主要成本都投入到了这些浩如烟海的需求沟通中。通常,开发者提供一个框架方案,有知识的客户基本可以判断是否合适,然后客户公司需要针对其实际操作提出组合修改需求,开发者记录在需求清单中,使用工作范围文件(SOW)和原型图纸供客户确认。即使在前期的需求确认工作上花费了很多时间,但到了真正的交付节点,还是会有很多的调整和确认环节。这就是为什么交付是传统软件开发服务的噩梦。这些环节无论是成本还是进度都容易失控。零代码平台首先提供了一种可能——无需开发人员的参与,精通需求的业务人员可以直接独立实现,因为他们不需要掌握代码开发知识。因为需求方直接独立实现,自然免去了重复的需求沟通和确认。每个人都可以开发软件。这句话一半是宣言,一半是现实。这完全取决于用户自己对需求的清晰度和学习新工具的意愿。为什么美国人习惯DIY?一方面是因为雇工人太贵,另一方面是有很发达很便宜的DIY工具支持。即使零代码平台也由技术团队提供,业务需求方也可以通过预先构建的演示模块轻松确认是否满足需求。建造者和使用者之间的沟通会非常顺畅。有时,用户会忍不住自己动手。4.认真的开发工作应该投资在哪里?1.零代码平台会取代程序员的所有工作吗?我不这么认为,至少在短期内,这是不现实的。零代码平台还有很长的路要走产品路线图要完成。即使我们拿了大力丸,马上把产品做的简单易用、功能强大、用途广泛(虽然世界上几乎没有这样的产品),企业用户建立信任也需要时间。至少目前,程序员们可以开始将精力转向一些更有价值的领域。大胆地将自己擅长的领域交给零代码系统去尝试。反正像我们这样的平台都提供免费试用,达不到也不用白费力气。但是,如果没有先自己动手就劝阻和劝阻他人不要尝试,那是不公平的。无论如何,零代码可以构建可用的应用程序并允许客户进行实际验证,至少对于部分模块。原生软件开发不可能这么豪迈。客户再怎么不信任,你也不可能把软件开发好。去和客户签合同。2.真正有价值的原生软件的开发应该着眼于庞大的客户群。软件业的成功是建立在“复制”的基础上的。如果一套软件是用户,这就是软件行业。耻辱。在中国市场,还有很多值得投资的软件产品领域,在一些细分市场,零代码平台没有优势。比如电商ERP和扩展的新零售解决方案,智能营销自动化工具,这些市场还没有饱和,但零代码系统缺乏基础的框架模块和生态连接,落地难度会更大。而且,即使是零代码应用,也不排除客户会继续选择一些打包好的软件产品进行混合使用。在这个过程中,还有配套的集成开发工作需要完成,才能为客户提供完整的应用体验。这些集成开发包括围绕业务需求合理设计数据接口,建立数据调度服务,连接不同的网络环境。当然,零代码集成平台即服务(IPaaS)的另一个分支也在努力通过产品化来减少这些重复工作。3.真的每个程序员都要一辈子写代码吗?如果你想将自己的视野扩展到代码开发领域之外,充分利用现有的IT知识,那么帮助更多人使用零代码平台,专注于业务,做应用建设规划和部署,岂不是一个不错的选择吗?提供必要的集成开发服务?很多程序员都想多了解业务,但是仅仅服务于业务需求是不够的。参与业务需求的规划设计,才能真正转变视角,成功跨界。4.从Coder到No-Coder的转变一点也不便宜。我一直认为程序员最可贵的特质就是学习能力。毕竟在代码开发领域,也需要不断学习和掌握新的技术栈,才能继续享用这碗饭。所以在零代码成为一种选择的今天,理智的程序员不会盲目排斥,而是应该玩转它。如果你真的对代码开发感兴趣,立志成为一名高阶程序员,加入明道云也是一个不错的选择,因为零代码系统确实是用代码编写的(以Java为核心)。【本文为专栏作家“明道云”原创稿件,转载请联系原作者获得授权】点此阅读更多该作者好文