在国内近几年低代码的热度非常高,腾讯、字节跳动和阿里等互联网大厂在低代码方向都有着重布局。低代码非常具有市场吸引力,这一点我们从 IPO 规模就能看出来,但低代码和无代码即受到了肯定也受到了质疑。这篇文章将从一个程序员的角度介绍低代码。
一、什么是低代码
低代码是一种软件开发方法,能基于图形化拖拽、参数化配置等更为高效的方式,实现快速构建、数据编排、连接生态、中台服务等。通过少量代码或不用代码实现数字化转型中的场景应用创新。低代码的主要目标是减少手工编码(即:从头开始编写代码)的数量,并增加代码复用的数量。
低代码平台包含三个主要组成部分:
- 1.可视化集成开发环境(IDE):低代码的IDE提供了一个直观且强大的环境,让开发者可以通过拖拽组件和模型来创建应用。它通常包括了表单设计、流程设计、界面设计等功能,且具备自动生成代码、快速预览、版本控制等特性。此外,IDE还应支持第三方插件的集成,以提供更丰富的功能。
- 2.连接器:低代码平台使用连接器将各种后端服务、数据库和 API 插入到平台,连接器给平台提供了可扩展性和增强的功能。
- 3.应用程序生命周期管理器:覆盖了从应用的规划、设计、开发、测试、部署、维护到停用的全过程。这个管理器能够帮助开发者进行需求管理、项目计划、自动化构建、持续集成/持续部署(CI/CD)、版本控制、缺陷管理、测试管理等众多工作。
二、低代码出现的目的
在应用操作过程中,程序员一直在努力提高组件、函数或者类的复用性,可以认为整个行业都建立在这个愿望之上,想一想那些 open API 和 npm 包管理器你就可以发现这一点。如果你认为使用低代码平台是在走捷径,那么恕我直言,你可能早就在走捷径了,因为使用 React、Vue和脚手架等开源方案也是在走捷径。
低代码不是对传统的颠覆,而是对传统的延续。从底层理论上讲,低代码尊重开发人员仍然需要定制这一事实。定制能力是低代码在 DNA 级别的差异。
例如,行业内典型的低代码产品JNPF快速开发平台,为了支撑更高技术要求的应用开发,从数据库建模、Web API构建到页面设计,与传统软件开发几乎没有差异,只是通过低代码可视化模式,减少了构建“增删改查”功能的重复劳动,没有体验过的可以尝试一下。
应用体验地址:JNPF用户中心
传统模式下需要 2 周完成开发的应用,用JNPF只要 2 小时。这是因为它的前后端封装了上千个常用类,方便扩展;集成了代码生成器,前后端业务代码生成,满足快速开发;框架集成了表单、报表、图表、大屏等各种常用的Demo方便直接使用;后端框架支持Vue2、Vue3。
三、低代码的适用场景
内部工具
内部工具没有华丽的外表和交互,但是开发人员花了很多时间在这些工具上,有研究表明开发人员将近三分之一的时间用于构建内部应用,在员工人数超过 5000 人的公司中这一比例上升至 45%。
用低代码开发内部工具不是说内部工具不重要,它很重要。但是,平心而论内部工具并不总是开发人员想要花费时间的地方,也不总是企业想要消耗他们研发资源的方式。使用低代码平台可以更快地开发内部工具,甚至让一些非开发人员也可以构建它们,让专业的开发人员花更多的时间做一些更具挑战,更复杂的事情。
MVP
MVP,即:小可行产品,由著名的创业专家埃里克·里斯提出,要求开发人员和创业公司更快地交付产品,更早地获得反馈,并考虑到客户的需求。MVP 是低代码的一个很好的使用场景,使用低代码开发应用程序能够缩短软件开发周期。
四、低代码的好处和坏处
低代码有各种各样的优点和缺点,这些取决于低代码厂商以及开发者如何使用它。
优点:
- 快速开发、节省时间:与手工编码相比,低代码开发可以让开发人员的想法更快地执行再到生产。
- 减少开发成本:低代码平台降低学习门槛,有助于解决许多公司面临的 IT 资源短缺的问题,使他们不需要雇佣更多的开发专家。
- 提高生产效率:许多低代码平台都带有预构建的组件,而且大多数平台都具有可以重用组件的能力,这使得低代码开发非常容易组合。
然而,低代码开发平台也存在一些缺点:
- 缺乏灵活性:低代码开发平台通常提供预定义的组件和工具,无法满足所有需求,必要的时候需要二次开发(上面提到的JNPF提供全源码,这一点无须担心)。
- 技术限制:低代码开发平台通常存在技术限制,例如无法使用某些编程语言或框架。
- 维护成本高:低代码开发平台通常需要更多的维护工作,因为需要不断更新和升级组件和工具。
五、低代码将增加软件开发人员的范围
低代码使更多的人加入到软件开发,它会扩大软件开发人员的范围,这意味着公司不需要为每个软件需求雇佣软件开发人员。这并不意味着开发人员的招聘将会放缓,但是公司可以从某些项目,比如内部工具开发重新分配开发人员的招聘,安排更多的专业软件开发人员面向客户的需求以及复杂和独特的软件开发问题。
六、总结
在谷歌上搜索‘Is low code the future?’会返回超过20多亿条结果,在百度上搜索‘低代码是未来的趋势吗?’会返回超过4千万条结果。实际上,低代码并不是未来,它是未来的一部分,在内部工具开发上它将大放异彩。
撇开低代码的商业价值,只从技术性上考虑,低代码平台包含的技术有:表单引擎、流程引擎、组件丰富性、数据管理、扩展功能、微前端、规则引擎、版本管理和 CI/CD 等,程序员完全可以以低代码为切入点扩充自己的专业能力。