[TOC]
- 一、低代码现状
当前,低代码开发领域正经历着前所未有的热潮,其发展历程中已孕育出多元化的平台生态,包括但不限于零代码平台、无代码平台、代码生成平台、专为业务中台设计的低代码平台、流程驱动的低代码平台、表单构建的低代码平台,以及BI(商业智能)低代码平台等。这些平台共同宣称的核心优势在于能够显著减轻程序员的工作负担与加班压力,同时为企业带来成本节约与效率提升的双重效益,各平台纷纷标榜其功能的全面性与无可替代性。
然而,尽管低代码开发理念广受赞誉,其在实际应用中的普及率却并未如预期般迅速增长,形成了“叫好不叫座”不被程序员及企业接受的现象。这一现象背后,隐藏着多重原因,值得我们深入探讨!
二、什么是低代码
低代码平台在权威视角中被定义为平台工程,本质要求开发过程数字化,它强调了集一站式开发、无缝协作、高效管理于一体的高级特性。这些平台不仅具备全场景开发能力,还支持一键部署、协作测试、敏捷运维(确保快速响应需求变化)、严谨的过程管理和标准化的实践,而不是传统的个人单机开发和world管理,未来开发强调是的团队协作能力和效率,而不是单打独斗。
低代码聚焦于多样化的开发对象,包括但不限于JAVA、Python等编程语言所支持的web网站、web系统、APP、小程序、人工智能应用及大数据处理等。它实现了通过单一平台覆盖全开发周期开发的能力,实现一站式全场景开发,而不是传统开发过程中使用多个工具来完成,比如,以Java为例,开发过程中所需的工具与中间件就有IDEA、Navicat、PostMan、GIT、Maven、Tomcat、Redis、Jackins、十几种各种关系型与非关系型数据库等,其中这里里面还不包软件版本及大量的技术组件、第三方接口集成、其他工具平台等。可以想象软件开发涉及的技术是多么的多、多么的复杂!
当然低代码可以形象比喻为曾经的dos命令系统到如今的window系统的可视化发展路线,使得操作系统变得易用,也无需系统学习。
三、低代码发展背景
我知道的低代码在过去20年前就已经存在并使用过,至今令我影响都深刻,当然哪个低代码是国外开发的,哪个时候还没有低代码这个概念,通常叫敏捷开发,通过可视化+开发框架+生成代码及数据库。如今低代码再次火热发展主要得力于云计算、中间件不断、开发框架、人工智能、大数据的发展成熟,以及程序员丰富的经验、企业或行业现有开发模式逐步遇到瓶颈诉求,加之现阶段软件涉及的技术越来越多,一个团队难易完全掌握这些技术。因此急需另一种高级集成度的开发平台来改变现有的笨重软件开发模式。
当前开发模式弊端:
1、代码膨胀与维护难题:尽管实施了代码封装与组件化,软件规模的扩大与功能的频繁更迭仍导致代码库臃肿,文件数量激增,维护修改难度加大,开发规划执行受阻。本身代码量大就是难度。
2、技术复杂性与门槛高:当前技术虽已成熟,但开发过程中涉及的工具、配置、环境等多样化且专业性强,要求开发人员具备系统性学习与深厚的技术功底,团队难以全面精通所有技术栈。
3、API与协作障碍:API接口的管理与维护复杂,增加了开发者的负担;同时,前后端协作流程不畅,影响整体开发效率。
4、部署与代码管理挑战:尽管有Jenkins、Git、Docker等工具辅助,但面对大型项目时,软件部署与代码管理依然繁琐,特别是代码查找效率低下,影响团队协作。
6、需求与人员变动影响:即便是成熟的前后端开发模式,也难以完全抵御需求频繁变动及人员流动带来的维护难题,这对软件的长期维护构成了挑战。甚至时间长了后代码及数据库、文档都难易找到更别说维护了。
四、开发模式演化
第一阶段:传统Web开发(约2005-2010年)
技术栈: Servlet + JDBC + JSP + CSS + JavaScript + HTML(独立开发)
第二阶段:框架化与前端库引入(约2010-2015年)
技术栈: SSH/ SSM + Bootstrap + jQuery(独立开发)
第三阶段:微服务化与前端框架化(约2015-至今)
技术栈: Spring Boot + Vue.js / React / Angular + Spring Cloud(独立开发)
未来模式:平台化、低代码与AI赋能(团队协作)
五、低代码层级划分
低代码平台展现出多样化的形式,旨在解决不同层级的开发与应用问题。它们可能依托于成熟的开发框架,通过可视化代码生成器简化编码过程,或是利用流程设计器、报表设计器及APP/小程序设计器等工具,加速特定类型应用的开发。此外,还有平台集成了业务中台功能,或直接对接成熟系统,甚至支持SQL开发,以满足更广泛的技术与业务需求。每种方式均针对特定场景优化,以满足不同用户群体的需求。
层级 |
类型 |
产品 |
低代码强度 |
开发场景 |
评分 |
第一级 (微低代码) |
开发框架: 基于成熟的开发框架和开发模式,并配合一定的代码生成能力,比如:easycode代码生成 |
SpringBoot+VUE、JBoot、JeecgBoot、Beetl |
弱: 传统流水编码 |
强:
|
60 |
第二级 (弱低代码) |
|
SpringBoot+(Vfrom、amis、FCdesigner)、 宜搭、微塔 |
中:
|
强:
|
70 |