在开始今天的课程前,我们先来简单回顾下上节课的思考题:低代码工具主要面向什么样的用户群体呢?低代码工具本质上是对组件化开发流程的简化,但在开发过程中,仍然可能进行编码调试。因此,它面向的用户群体应该是具有一定技术基础的开发人员,专业的后端开发也可以使用这类工具来快速开发项目中的前端功能。
在介绍低代码开发的时候,经常伴随出现另一个名词:无代码开发。今天我们就来近距离地了解这种开发模式的相关知识。
在讨论无代码开发之前,我们先来看下这种开发模式出现的原因:
无代码开发模式正是为这些问题而量身定制的。
无代码开发(No-Code Development / Codeless Development)是指通过非手写代码工具来产出代码的方式。这类工具被称为:无代码开发平台(No-Code Development Platform,NCDP)。
从下面的表格中可以看到无代码开发和低代码开发的主要区别,包括目标人群、目标产品、开发模式等 7 个维度。
区别维度 | 低代码开发 | 无代码开发(面向非开发) | 无代码开发(面向准开发) |
---|---|---|---|
目标人群 | 主要面向有一定技术基础的开发人员 | 主要面向非开发岗位人员(例如运营人员,设计人员) | 主要面向准开发人员(对开发思维的需求随项目难度递增) |
目标产品 | 主要为 B 端中后台 | 主要为 C 端活动或 H5 | 结合前两者 |
开发模式 | 编写 JSON/操作图形化交互平台(偏重前端) | 操作图形化交互平台(偏重前端) | 操作图形化交互平台(前端到后端) |
基础设施 | 通用的组件库与渲染流程 | 典型的页面/项目模板,以及与视觉呈现相关的组件 | 前后端组件 |
可自由定制的内容 | 组件的选择、布局、属性、数据、交互 | 可视化数据(文本、媒体、动画等)的编辑 | 前端可视化数据,后端数据与逻辑功能等 |
数据接口 | 通常由独立后端单独开发提供 | 无数据接口,或通常由平台方提供标准化的接口 | 基于云基础设施的数据功能 |
部署 | 可单独部署 | 通常由平台方提供云服务部署 | 通常由平台方提供云服务部署 |
其中,可以把市面上的无代码开发模式进一步细分为两类:
下面,我们就来进一步了解下这两种开发模式的异同。
这类产品的设计目标就是将一些固定类型的项目生产流程,由代码开发转变为操作图形化交互工具。
企业内部的定制化搭建平台
例如面向 C 端的企业经常会有推广拉新的开发需求,以红包活动为例,如果按照普通的代码开发流程,需要经历以下 6 个流程才能最终上线:
这类活动通常是可复用的,然而针对不同时间段,或者同一时间段的不同推广渠道和推广地区,通常需要提供模式相同但外观与数据(例如红包金额)不同的活动产品,于是当需要复用时,会发现除了产品交付的流程不用变更外,后续所有开发部署流程都难以避免。这导致开发资源被低效地占用,生产效率也无法进一步提升。
而无代码开发产品可以完美地解决这一类问题,针对同一类型的活动项目,前后端工程师可以开发出对应的可视化活动搭建平台,提供:
这种方法通过一次开发,即可让运营人员长期重复使用,解放了后续的开发资源,并且从流程上将普通项目开发的 6 个环节简化为两个环节:设计师设计页面,以及运营人员无代码地编辑内容。这将原先以天为单位的开发部署时间,缩短为以分钟为单位的编辑生成时间。
以上便是企业内部无代码开发的一类应用场景。
外部无代码搭建平台
另一类面向非开发人员的无代码开发产品,针对的是缺乏开发资源的企业和部门。对于一些常见的小型项目需求,例如招聘页面、报名页面等,它们往往需要借助外部提供的无代码开发平台。这类无代码开发平台包括百度 H5、MAKA、易企秀等。
百度 H5 编辑界面
这类产品的特点是:
而面向准开发人员的无代码开发产品,则有以下几点不同:
iVX 编辑器中后端逻辑描述面板
这节课我们介绍了和低代码开发对应的另一种开发模式:无代码开发。首先我们对比了两种开发模式不同维度的区别,又进一步介绍了无代码开发的两种不同方向:面向非开发人员的产品与面向准开发人员的产品。
面向非开发人员的无代码开发在企业内部与外部都有相应的应用场景:在企业内部我们可以将一些频率高的常用简易开发流程,固化为无代码开发产品,供运营或其他岗位人员使用;而在企业外部,也有不少免费或收费的无代码平台,将开发工具提供给缺乏技术资源的企业与个人;同时,设计师也可以在这类平台上制作自己的设计模板提供给用户。
面向准开发人员的无代码产品相比之下具有更广泛的使用场景,通过提供后端数据与逻辑的描述功能,用户可以通过 IDE 开发出具备前后端数据交互的复杂应用,进一步减少与普通代码开发的功能边界的差距。但相对的,要利用工具实现复杂应用,对用户的学习成本和思维培养也是一种新的挑战。究竟这种模式是否能被更多企业所接受,成为代码开发模式的替代呢?让我们拭目以待。
通过这一课,希望作为前端工程师的你能够在工作中考虑无代码开发的第一种应用场景,在合适的场景下开发相应的工具,来解放团队的开发资源,提升效率。而对于外部的无代码开发平台,如果感兴趣,希望你进一步了解,或许能对普通代码开发的模式有所借鉴。
最后,随着这一课的结束,我们就完成了开发效率篇的所有课程。今天的思考题是回顾本模块的内容,学会在工作中运用,如有疑问,欢迎你写在留言区。
下节课我们将进入第二个模块:构建效率篇。一起深入了解你所使用的构建工具中有哪些影响效率的知识点。