本文概述
近两年低代码技术突然变得格外火热,各种低代码平台纷纷粉墨登场。尤其是国内互联网大厂不断推出云端低代码开放平台,更是给低代码技术添了一大把柴火。实际上低代码技术不是近两年才出现的新鲜事,早在上个世纪80年代起以CASE(计算机辅助软件工程)技术为代表的低代码技术就已经出现了。其中典型的产品有:Oracle公司的CaseDesigner、GeneXus公司的GeneXus等。
由于大量的战团加入了低代码市场的竞争,典型的包括有基于OA、BPM、RAD、ERP、PAAS、APAAS、SAAS等不同的技术背景。不同的技术实现给企业用户对低代码平台的选择带来了较大的困难,哪种平台更适合自己呢?本文将通过对低代码技术中的两种核心关键技术的分析帮助企业用户进行选择。
我们知道大部分低代码平台都采用了模型驱动的开发模式,即通过可视化建模的方式来实现软件的设计和生成。领域模型创建完成后,有两种技术路线来生成和运行模型应用:A,对生成的模型进行编译并生成所有相关的源代码,使其成为普通的应用系统,该技术称为“代码生成”;B,利用模型解析执行引擎直接解析并运行所生成的模型,该技术称为“模型解析”。以下将简要介绍两种技术的实现原理和特点。
代码生成
低代码开发平台对于所创建的模型进行分析并生成指定的目标源代码,可以是Java、.NET/core、JS、CSS、H5等。在生成源代码时,常见的方法是使用模板引擎技术。以Java代码生成为例,一个模板会包含一系列相关的Java代码段,同时包括了若干个空白标识,