暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

低代码(Low-Code)技术杂谈

川聊架构 2021-11-29
2240

-     什么是低代码    -

    “Low-Code”是什么?身为技术人员听到这种技术名词,咱们第一反应就是翻看维基百科 或者其他相关技术论文,咱们想看维基百科的英文介绍:

A low-code development platform (LCDP) provides a development environment used to create application software through a graphical user interface instead of traditional hand-coded computer programming.

https://en.wikipedia.org/wiki/Low-code_development_platform

    咱们简单翻译下,可以得知低代码的几个核心点:

  • 是一个开发环境,也是一种软件平台。

  • 利用可视化界面进行创建应用。

    这时相信很多老板会冒出一个想法,可视化编程那不是很早就存在的东西吗?那么低代码又有啥新特性呢。

    咱们顺寻wiki的描述,可以发现低代码是2014年由Forrester提出的,经过多年的进化。我对低代码的定义如下:

    让泛IT人员 通过行业化模板、拖放式组件、可视化配置生成应用的开发平台,帮助企业进行数字化转型。

  • 模型驱动设计的落地:是应用场景的极致抽象并且模型化的过程,利用了MDD作为指导思想,整体代码经过高度设计和充分质量测试,是应用业务基础设施化的有力落地

  • 自动化代码生成:生成的代码都是通过精心维护和设计的模板进行生成,再通过BPM、BPA、表单DSL 极少代码形式编码实现。

  • 全栈、端到端的可视化编程:整个应用的全生命周期支持,从开发、部署、运行全流程都是可视化操作,并提供端到端可视化监控运行。

-     低代码构成    -

低代码分类

    低代码平台在落地主要分两种模式:

  • 表单驱动:类似于传统BPM,这类型应用是业务信息管理为主,标准化非常高,是以数据为核心通过工作流在软件系统中运转业务流程,核心是数据表。利用动态表单技术实现页面标准化和代码自动生成。利用工作流实现BPM实现业务可视化配置。但是在整体比较固定,无法满足强个性化需求。

    • 厂商案例:宜搭、简道云、OutSystems、APICloud、

  • 模型驱动:是MDD的落地实现,通过建模定义业务逻辑,包括数据关系、流程逻辑等,实现应用开发管理自动化。通过对某个业务场景进行高度抽象,沉淀成平台内部的业务中台。在通过API对外提供业务模板功能,在利用小前台方式进行用户轻应用生成。因为业务核心收敛到中台,维护了低代码平台的生态封闭性。

    • 厂商案例:Mendix、AgilePoint、奥哲云枢、金蝶云苍穹

低代码商业模式

  • 直接面向企业客户:直接提供平台+定制化服务,交付质量和满意度较高

  • 间接面向企业客户:通过第三方集成商交付产品,商业模式更为轻量化

  • 前后端开发平台:降低前端或后端开发门槛,微服务架构增加开发灵活性

  • 生态型平台:提供开发标准和交易平台,以打造开发生态为主


-     低代码开源技术    -

    目前低代码是一个热门的赛道,所以虽然在github上可以看到很多开源技术,但是这些开源技术都是只停留在低代码工具的级别,毕竟利益动人心。咱们举例一些比较常见的低代码工具:

国内:

  • jeecg-boot:JEECG 开源社区开源的低代码框架

    • 官网地址:https://gitee.com/jeecg/jeecg-boot

  • amis:是百度开源前端低代码框架

    • 官网地址:https://gitee.com/baidu/amis

  • ubml-impl:浪潮开源的UBML低代码建模语言,是开放原子开源基金会(OpenAtom Foundation)旗下的孵化项目。

    • 官网地址:https://gitee.com/ubml/ubml-impl

国外:

  • PowerFx:微软开源 低代码开发语言

    • https://github.com/microsoft/Power-Fx

  • Metabase:https://github.com/metabase/metabase

  • BudiBase:https://github.com/Budibase/budibase

  • CUBA Platform:https://github.com/cuba-platform/cuba  https://github.com/cuba-platform/cuba

  • Digdag:https://github.com/treasure-data/digdag/ https://www.digdag.io/

  • Baserow:https://gitlab.com/bramw/baserow

  • Saltcorn:https://github.com/saltcorn/saltcorn

  • Joget DX:https://www.joget.com/

  • Stackstorm:https://github.com/StackStorm https://stackstorm.com/ 


-     作者介绍    -


林淮川

毕业于西安交通大学;奈学教育首席架构师,教学教研负责人;前大树金融高级架构师、技术委员会开创者、技术总监;前天阳宏业交易事业部技术主管;多年互联网金融行业(ToB)经验。

文章转载自川聊架构,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论