2021年初,钉钉带火了低代码,而在低代码火爆的同时,随之而来也带来了行业乱象,这半年以来,小编看到很多公司,都自称自己是低代码,甚至随便一个软件公司都说自己是低代码,这就让人很费解了。那么,面对最近涌现的大量低代码玩家,我们该如何辨别低代码平台的“真假”呢?

    文末作者已把辨别方法详细地告诉给大家。按照这些维度打分,即可辨别喔~

    而为了更好地研究低代码,我们首先要探讨,如何定义低代码平台?

    一、如何定义低代码平台?
    著名咨询机构Gartner,于2020年9月发布的《企业级低代码开发平台的关键能力报告》(Critical Capabilities for Enterprise Low-Code Application Platforms)中,定义了低代码的11项关键能力。也就是说,这11项关键能力是衡量一个平台是否能够称之为低代码平台的关键因素。

    先简单了解一下各项要素的含义:

    1、Intuitive, No-Code App Development:易用性,不写代码时的开发能力

    在不写代码的情况下,能够完成多复杂的系统搭建。这是标识低代码开发平台生产力的关键指标。

    2、Application User Experience:所开发出来的应用的用户体验

    它指的不是低代码开发平台本身的用户体验,而是通过低代码平台开发出来的应用,给到用户的使用体验。

    3、Data Model and Management:数据模型和管理

    这个指标就是通常所讲的“模型驱动”,相比于表单驱动,模型驱动能够提供满足数据库设计范式的数据模型设计和管理能力。开发的应用复杂度越高,系统集成的要求越高,这个能力就越关键。

    4、Process and Business Logic:工作流与业务处理逻辑

    流程应用与业务逻辑开发能力和效率。这个能力有两方面:

    第一,是指使用该低代码开发平台,是否可以开发出复杂的工作流和业务处理逻辑;

    第二,是开发这些功能时的便利性和易用性程度有多高。

    5、Platform Ecosystem:开发平台的生态系统

    低代码开发平台的本质是开发工具,当内置的开箱即用的功能无法覆盖更多应用场景时,就需要基于该平台的完整生态系统,来提供更深程度、更全面的开发赋能,比如开放的插件机制。

    6、API and Integration:编程接口与系统集成能力

    为了避免“数据孤岛”,低代码开发平台需要提供系统集成能力、编程接口,跟其它系统进行数据的互联互通。

    7、Architecture:系统架构

    系统需要支持服务化、分层的架构方式,支持高可用、集群的应用部署方式。

    8、Quality of Service:服务的质量

    系统的健壮性、无故障使用时长、故障恢复时长,对CPU资源、硬盘资源占用情况,对云是否友好。

    9、Persona and SDLC:用户模型与软件开发生命周期支持

    软件开发的生命周期中,包含设计、开发、反馈、测试、运维等多个环节,低代码平台要支持单元/集成测试、联调、发布、回滚、持续迭代等。

    10、Governance:治理及运维

    现代软件开发中的敏捷开发、代码库管理,版本权限,发布管理等,在低代码平台中,都要能够支持。

    11、Security and Compliance:安全与合规

    低代码开发平台需要提供:灵活的部署方式、安全机制和权限控制、SSL数据传输、密码强度策略、跨域访问控制、高粒度的用户权限控制等等。

    以上就是Gartner对低代码平台定义的11个要素,相信许多技术人员已经对低代码有个大致认识了。但是,想要识别和判定一个低代码平台的话,直接使用以上11个要素,就有点太繁琐了。

    二、如何辨别低代码平台的“真假”?
    我结合软件工程全生命周期实践,以及Gartner定义的11个要素,给“低代码”平台拟定了6个维度的判定标准:

    1、拖拽式开发;

    2、对象封装与数据模型;

    3、模型驱动;

    4、脚本语言;

    5、软件测试与部署;

    6、API与集成。

    1、拖拽式开发

    拖拖拽拽做开发,就是“低代码”开发平台给大家最直观的印象,所以也是“低代码”开发平台最基本的特征。

    这一点,市面上的许多“低代码”平台都能够做得到,可以说是个送分题,如果你家的软件产品连这点都做不到,就不要吃“低代码”这碗饭了。

    2、对象封装与数据模型

    这部分指的是低代码平台要操作的对象、数据模型、表达式等等,它可以是高度抽象和封装的对象,可以省略掉“类”、“接口”、“函数”这些编程语言的高级特性,以更简化的方式提供出来,供程序调用。

    3、模型驱动

    “模型驱动”是相对于“表单驱动”的,指的是对于数据进行建模和处理,比如国外的低代码平台OutSystems、Mendix,就有很强大的模型驱动的能力,包括了定义实体、实体关联、主键、索引、数据查询等等。

    4、脚本语言

    脚本语言实际上就是编程语言了,是低代码平台实现复杂业务逻辑的扩展,可以使用 JavaScripts、Python、Java等语言进行编程。

    但是,低代码平台会把语言的编译过程做好封装,做到一键发布,即时运行,方便代码调试。

    5、软件测试与部署

    低代码开发平台,本质上是软件开发工具。所以整体开发过程也要遵守软件工程的流程规范。只是把许多环节都做了简化、内部封装,降低了学习成本、开发成本、测试成本、部署成本。

    6、API与集成

    主要是解决低代码平台开发出来的系统,跟其它外部系统的数据互联互通,否则又是造了一堆大烟囱,一些数据孤岛。

    以上6个判定标准怎么使用呢?

    每个维度1~10分,总分36分是及格线。分数越高,表示这个低代码开发平台越完善、成熟度越高。通过这个方法,可以简单判断一个低代码平台,是真低代码,还是伪低代码。

    结语:
    合理并且有效地运用低代码平台,不仅可以让我们工作高效地运行,还能最大程度保证团队目标的达成。