前言:
在LowCodeEngine刚开源的时候并没有应用级别和多人协同、多分支多版本场景下的解决方案,以下是我们自己平台对于该场景的思考和建设。
低代码与多人协同开发
低代码应用设计器提供了直观的界面和与构建模块,简化了程序开发的流程。在平台中应用开发人员通过拖放组件、设置组件属性和编排逻辑来快速搭建应用,一目了然的可视化搭建,即使没有编程基础,也可快速入门。 腾讯微搭、魔笔等平台采用实时数据同步机制进行多人协同开发,但我们的低代码平台则另辟蹊径。我们采用的是类似于git的版本控制策略,确保每位开发者都拥有独立的开发空间,无需实时公开工作进度。开发者能够有选择地提交工作成果至远程仓库,既维护了工作的私密性,又实现了团队协作的灵活性与高效性。 当开发者完成某一部分的功能或修复错误后,他们可以选择将更改提交到远程仓库。通过版本控制,每次提交都会生成一个新的版本,并且可以与其他开发者的更改进行合并。 创建应用后支持创建多个分支、不同分支之间的合并以及形成里程碑等。
数据存储
数据存储分为服务端存储和客户端存储。 服务端:存储着每个应用开发者提交上来的所有分支和版本的全部记录、用来实现多人协同开发以及查看代码历史版本、回滚和查看代码变更等版本控制功能。 客户端:存储着每个低代码应用开发者在本地开发应用的数据。本地存储也支持保存应用的多个版本,这一特性极大地增强了灵活性,使得开发者在应对不同场景及需求变更时能够更加从容不迫,同时在必要时进行版本回退也显得尤为优雅和便捷。这样不仅提高了开发的灵活性,还使得在不同场景下的应用与版本回退更加得心应手。
整体流程
创建应用->创建分支->迭代开发(提交、更新、处理冲突)->形成里程碑(版本)。
注:下面的示意图都是很早之前的版本了。
创建应用
从管理太创建应用,创建应用会自动初始化应用对应的资源,包括默认分支等。
迭代开发
选择一个分支和提交记录,进入低代码设计器。 在设计器里可以通过拖拽搭建多页面应用。保存页面或者应用。
拉取/推送
随时可以拉取和推送数据
可视化Diff(基于组件)
形成版本
在开发结束之后基于某个分支的某个提交记录形成一个里程碑(版本)用来测试、出码交付等。
最后
以上便是我们低代码平台在支持多人协同开发、多分支多版本管理方面的探索与实践成果。作为公司内部的重要工具,我们不断优化和完善平台功能,以满足日益增长的业务需求。目前,该平台已在多个项目中得到成功应用,并收获了积极的反馈。我们对平台进行持续的打磨和优化,也希望早日与大家见面。
展望
低代码平台/系统的目标客户是普通业务人员或者产品人员,让想法或者原型图直接和真实数据交互,促进敏捷创新提高开发效率。ChatGPT类AI为信息查询解答、创作、工作效率提升提高了极大的便利,但是还是不能替代专业人员,而通过低代码这个中间层就可以将编程知识封装起来可视化的展示给普通用户。低代码+AI未来可期。 低代码平台/系统以其直观易用的特性,主要面向普通业务人员或产品人员,使他们能够通过简单的操作将想法或原型图直接与真实数据进行交互,从而加速敏捷创新的步伐并显著提高开发效率。尽管ChatGPT等AI技术在信息查询、解答、创作以及工作效率提升方面为用户带来了极大的便利,但仍然无法完全替代专业人员。而低代码平台作为一个中间层一座桥梁,封装了复杂的编程知识,用可视化的方式呈现给普通用户,降低了技术门槛。低代码与AI技术的深度融合将带来无限可能。
本文正在参加阿里低代码引擎征文活动