LCDP,low-code development plateform.
最近2到3年,低代码开发平台可以算作一个小热点,不论是传统的BPM厂家,还是原来的快速开发平台厂家,包括还有一些中台建设厂家都逐步推出自己的低代码开发平台。
目前市面上的lcdp:
- 面向业务:宜搭、轻流、奥哲、明道
- 面向开发:普元EOS/ JEECG
- suppas低码云 http://www.suppas.info/
低代码平台分类
代码码平台实际应该分为两大类:
一类是面向业务,提供标准pass组件的商用平台
一类是面向开发,提供代码一键生成甚至是系统一键构建能力的低代码平台
是什么
LCDP是提供低代码甚至0代码开发能力的pass平台,面向对象配置化、组件化、流程自动化的开发方式提高代码结构化,具有上手快(傻瓜式接入)、开发上线快、运行快、运维简单的特点。
~~
面向对象 - 元数据定义
LCDP的配置化是基于面向对象的思想,维护对象的元数据信息,而元数据是对业务对象属性的抽象。如果把元数据比作jvm中加载在方法区的class信息,那么业务数据的行记录则相当于jvm的对象实例数据。
元数据一般需要包含对象信息、字段信息、列表视图、布局、按钮。
- 对象 对象是在lcdp中对事务的抽象描述,字段、列表、布局、按钮都是对象元数据内容的一部分
- 字段 对象所属字段信息,包含字段类型和属性,如数值字段的数值精度,字段一般有数值、文本、日期、单多选、描述和其他对象关联关系等类型
- 列表视图 定义一个列表所包含的查询字段、过滤条件、排序条件,视图的本质是对数据库select语句的抽象配置定义
- 布局 布局则是业务数据详情页的配置定义,根据这个定义来决定不同的详情页展示不同的字段和排版
- 按钮 按钮一般存于列表行或详情页
组件化
LCDP具有可建模能力,提供不同的组件集成,赋能传统saas平台。
- 表单与页面建模 所有web页面模型,都由配置定义,lcdp自动实现
- 流程建模 有限状态机的流程控制和自动化管理
- 权限建模 权限控制分范围和级别,auth - roleauth - authversion
- 数据建模 提供数据托管能力
- 报表建模 提供报表分析能力
甚至一个足够优秀的LCDP还可以提供大数据分析、区块链、人工智能等前沿的模块组件,这样,一个规模极小的web应用只需要租赁和依托于LDCP就可以快速搭建起来,且功能强大。
流程自动化
流程自动化:通过定义流程(执行规则和执行任务), 在自动化执行规则得到满足的条件下,由LCDP自动化执行引擎执行配置好的自动化任务。像salefores的automation和微软的dynamic都是自动化模型的不同实现。
自动化规则
规则是自动化能够执行的先决条件,只有满足配置规定的条件,才会触发自动化任务。
规则有哪些:
- 数据变更 对象B的F1字段变更事件
- 事物状态切换
- 截止时间到达
自动化任务
自动化任务可以是:
- ServiceTask(仅面向开发) job任务 或springbean方法 或http/rpc远程调用 或mq异步任务
- msgNotify 短信/邮件/钉钉/app通知等各种通知消息
- 业务数据的变更 配置一个满足某些条件触发对象A本身或关联对象的部分目标数据的变更。