实战低代码
上QQ阅读APP看书,第一时间看更新

1.1 低代码平台的概念与分类

目前,由于企业的经营日益复杂,企业内部各业务实体之间以及企业与企业之间的业务关联不断增强,业务数据交互日益频繁,企业面临着越来越多的难题。此外,市场的变化频率越来越快,这意味着企业需要迅速且灵活地响应这些变化,以满足环境的可变要求。因此,承载企业运维能力的IT系统和业务系统需要能够承受环境负荷的压力,具备满足快速变化的需求的能力。该能力被一些学者(例如西班牙的桑奇和波勒)定义为企业复原力,旨在为企业提供预防和预测的能力,改变企业的性质和适应不断变化的环境的能力以及应对动态需求的能力。

因此,速度是当前企业数字化及IT系统转型中一个非常重要的影响因素。

为了提高企业的适应能力,以便迅速有效地满足市场需求,为企业内外部快速开发满足业务和市场需求的软件解决方案,在历经最底层的汇编、高级语言、更高效率的编程框架(如Spring框架、大前端框架等)后,计算机科学领域的大量研究工作集中在一个共同的目标上:实现软件的高效构建,无须重复传统的手动编程,同时兼顾业务人员和专业开发人员的更多参与。有鉴于此,低代码平台被视为一种新机制,可促进软件的快速开发及其自动化,以满足当前企业需求并促进弹性数字化转型。

“低代码”一词最早由Forrester Research的Clay Richardson和John Rymer在2014年提出。这一年在他们发表报告《面向客户应用的新开发平台出现》之后,低代码平台正式诞生。在这份报告中,他们创造了“低代码”这一术语,并对低代码的技术、用途和市场进行了概述,同时指出,许多公司更喜欢选择低代码替代方法,以便快速、连续地进行应用交付。

低代码,顾名思义,就是指开发者写很少的代码,通过低代码平台提供的界面、逻辑、对象、流程等可视化编排工具来完成大量开发工作,降低软件开发中的不确定性和复杂性,从而大幅提升开发效率,让企业能够降低开发成本,降低技术门槛,快速创新应用,实现快速试错,敏捷迭代。

在Gartner的定义中,低代码平台被称为企业级低代码应用平台(Enterprise Low-Code Application Platform,Enterprise LCAP),是支持快速应用开发,使用陈述性、高级的编程抽象(如基于模型驱动和元数据编程语言)实现一站式应用部署、执行和管理的应用平台。不同于传统的应用平台,它支持用户界面、业务逻辑和数据服务的开发,并以牺牲跨平台的可移植性、应用开放性为代价来提高生产效率。

目前,广义的低代码是指所有可以帮助缺少编程基础的人员快速完成软件开发的技术和工具。Gartner认为,低代码主要有以下几个主流分支。

1.无代码开发平台

无代码开发平台属于低代码平台的一种,不提供或者仅支持非常有限的编程扩展能力,一般仅用来开发内部管理类或市场营销类表单。

2.低代码应用平台(LCAP)

LCAP属于狭义的低代码平台,是万金油类产品,可用来开发包含前端和后端的应用。它关注通过声明式的模型驱动和基于元数据的服务来提供快速的应用开发、部署和执行。这个市场囊括了大部分低代码技术供应商,主要产品是具备自描述性的无代码应用开发工具。

3.多重体验开发平台(MXDP)

MXDP提供快速开发跨平台App的工具,突出前端开发能力,一般用来开发多平台/多终端应用。这些产品通过提供一套包含前端开发工具和后端服务的集成套件,使开发人员(有时甚至是非开发人员)能够跨各类数字设备进行相应用途和形式的扩展性应用开发。它们支持自定义移动应用、响应式Web和渐进式Web应用(PWA)、沉浸式用户体验及对话式应用。

4.智能业务流程管理套件(iBPMS)

整合了AI等技术的业务流程管理系统(BPMS)突出后端流程定义和数据整合能力,一般用于解决大型企业的跨系统业务流程。这类模型驱动的(因而是低代码的)开发平台可以在操作模型和应用时动态变化。它们通过流程和业务规则/决策实现业务操作的自动化。Gartner的研究范围也扩大到iBPMS,包括可持续的智能和动态流程管理系统。尽管模型驱动意味着低代码,但其中一些可以实现复杂流程和决策的模型既复杂又专业,这可能需要相关专家协助开发。

低代码平台的诞生,使得原本不具备IT系统或应用系统开发能力的非技术人员参与开发成为可能,这就带来一个新的“全民开发者”的概念。这个概念是由Gartner创造的。根据Gartner的说法,全民开发者是指使用企业IT认可的开发和运行时环境为他人创建新的业务应用的用户。专门针对低代码/无代码领域的全民开发者是为自己或公司创建商业应用的商业用户。因此,低代码平台主要面向如下两类人员提供快速开发应用的能力。

·业务人员。平台通过提供大量界面模板、业务模板、流程模板和对象模型,使业务人员能够根据实际业务需要以积木式组装的方式快速拼装应用系统,快速实现应用创新。

·开发人员。利用平台的页面编排工具和流程编排能力,开发人员可在平台上组件化、微服务化已有的大量服务,同时,基于数据共享能力,编写少量代码就可以实现自己想要的应用管理系统。

因此,低代码平台是可以开发应用的生态系统,使用者通过已经构建并预配置的能力,可以最大限度减少手动定义和实现代码。低代码平台强调可视化界面,使没有技术背景的人能够相对轻松地创建和部署业务应用。

从低代码技术的起源来看,低代码平台的主要目标是允许企业开发应用而不需要复杂的工程来促进其配置,从而实现快速性和敏捷性。此外,这些平台也为企业提供了更经济的方式来满足市场或企业自身的要求。借助低代码平台,企业可以为移动或桌面设备等创建多功能和高信息管理功能的应用。

低代码平台技术目前在国内外都发展迅猛。早在低代码的概念完善之前,Salesforce公司就在1999年提出了“软件终结”的口号,并面向开发者研发了force.com应用开发平台,允许开发者基于此快速开发CRM软件系统,从而开启了低代码应用开发的航程。OutSystems和Mendix分别于2001年、2005年创立,专注于低代码开发平台的建设。微软在2015年推出了融合AI技术的低代码平台Power Platform。

在国内,低代码平台在近几年如雨后春笋般涌现。明道云、简道云、APICloud都加入了低代码赛道,科技巨头华为、阿里巴巴等也都纷纷推出了自己的低代码平台。