低代码开发平台

来自维基百科,自由的百科全书

低代码开发平台(英语:Low-Code Development Platform,简称LCDP),是一种方便产生应用程序的平台软件,软件会开发环境让用户以图形化接口以及配置编写程序,而不是用传统的程序设计作法。此平台可能是针对 某些种类的应用而设计开发的,例如数据库业务过程、以及用户界面(例如网页应用程序)。这类平台可能可以产生完整且可运作的应用程序,也可能在一些特殊的情形下仍需要编写程序。低代码开发平台可以减少传统代码的数量,加速商业应用软件的完成时间。常见的好处是让比较多的人可以参与软件的开发,不只是那些有程序设计技巧的人。低代码开发平台也可以让设置、训练及布置的初期成本降低[1]

低代码开发平台是在2014年6月9日由产业分析公司Forrester Research英语Forrester Research所提出的名称[1],不过类似平台的概念可以追溯到2011年[2]

低代码开发平台的根源可以追溯到1990年代以及2000年代初期的第四代编程语言快速应用程序开发工具。低代码开发平台是以模型驱动设计(model-driven design)、自动化代码生成英语Automatic programming以及可视化程序设计的概念为基础[3]终端用户开发英语End-user development的概念很早已经存在,不过低代码开发平台用了一些新的开发方式。

用途

在微电脑普及使用后,企业普遍会为员工配置电脑,也让许多的企业流程可以用软件进行自动化。软件自动化以及新商业流程的应用需要程序员为其开发大量的软件,并且针对组织的特殊需求进行修改[4]。低代码开发平台的目的就是针对组织特殊流程及资料需求,提供平台,可以快速的开发及提供应用软件[5]

目前应用情形

研究公司Forrester Research英语Forrester在2016年估计全球低代码开发平台的市场在2020年会成长到美金155亿元[6]。市场主要是在数据库、需求处理、移动设备、流程及一般应用的低代码平台[7]

低代码开发平台成长的原因是因为其灵活性及简单[8],此平台已扩展到通用的应用程序,若需要的话可以加入定制的代码[2]

推动低代码开发平台的原因之一是因为其对移动设备的支持[4]。开发者可以不用花时间开发多个对应不同设备的软件,低代码平台一般都已将此列为标准功能[4]

在低代码开发平台上开发,比较不需要程序设计能力,在此软件开发环境下,几乎每一个人都可以学习,应用此环境来开发。像是拖放接口的功能可以让用户可视化,并且建立应用程序[6]

信息安全以及合规性的疑虑

目前已有人对于低代码开发平台的信息安全以及合规性有产生疑虑,特别是一些会用到客户资料的应用程序。信息安全有疑虑的原因是因为应用程序很快就可以建立,过程中可能会缺乏应有的治理,以及会有合规审查的相关问题[8]。不过低代码开发平台也推动了资料安全上的创新,若考虑到持续的应用软件开发,也比较容易建立安全资料流。无法严格依循正规系统理论(Herwig Mannaert, Jan Verelst, Peter De Bruyn, 2016)的低代码开发平台,无法解决因为变化所增加的复杂性,这个问题目前仍然存在[8]

趋势

Forrester有一个有关低代码开发平台的报告,提到在评估低代码开发平台提供者时,需考虑的26个准则[9]

另外Forrester在2017年7月有一份报告,提到低代码开发平台的成长,其中强调三个产业驱势[10]

  • 成长:低代码开发平台在接下来的五年内预计会有210亿美金的市场。
  • 分散化:有二个主要的开发市场,分别是针对企业需求(citizen)的开发者,以及针对应用程序开发(App Dev)的专业人士。
  • 集成:随着低代码开发平台开始扩展,企业界也在关注像是人工智能、机器人以及机器学习的技术,因此之后给企业的解决方式需要有这些功能。

相关评论

有些IT专业人士会质疑低代码开发平台是否可以用在大规模、关键任务上的企业应用[11]。其他的质疑包括这些平台是否有让开发变快、变简单[12]。有些首席信息官的疑虑是在公司内容使用低代码开发平台,会让影子IT所构建,一般IT不支持的应用程序越来越多[13]

和无代码开发平台的比较

无代码开发平台(英语:No-Code Development Platform,简称NCDP)类似低代码开发平台,利用后者开发可能会需要撰写少量代码,利用无代码开发平台开发时,完全不需要撰写代码[14]

这两种开发平台之间的分界不太明确,主要有以下三项的差异:

  • 应用程序创建者:所有终端客户都可以使用无代码开发平台,而低代码开发平台中有一些平台的限制,在开发应用程序中,需要在这些限制下进行。
  • 核心设计:无代码开发平台的运作方式是模型驱动、宣告式的开发方式,终端用户使用拖拉对象或是简单的叙述来设计应用程序。低代码开发平台比较多是需要一个严谨的核心,以标明应用程序的核心架构[15]
  • 用户界面:无代码开发平台一般会透过已有的用户界面层,以简化应用程序的设计。低代码开发平台在用户界面上灵活度较高,但代价是需要额外撰写程序,以及需求带来的复杂度[16]

相关条目

参考资料

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.