也许很多人对低代码这个词相当陌生。低代码(Low-Code)正式被提出可以追溯到2014年,当时全球最具影响力的独立研究咨询公司Forrester正式提出了低代码的概念。低代码是一种软件开发方法,它使开发人员能够通过图形界面、拖曳组件和模型驱动的逻辑,快速构建和部署应用程序,而无须编写大量的代码。低代码开发平台(LCDP, Low Code Development Platform)是指通过为开发者提供可视化的应用开发环境、基于封装组件的通用模块,降低应用开发时编写原生代码的需求量,可以便捷完成应用程序搭建的开发平台。
经过了几年的发展,2018年,低代码成为全球科技行业备受关注的技术之一。也就是在2018年,全球最具权威的IT研究与顾问咨询公司Gartner提出,低代码平台是一个应用程序平台,它使用声明性的高级抽象程序及一步式部署来支持快速的应用程序开发、部署、执行和管理。
综合了多家权威机构的概念定义,得帆云团队这样总结:低代码是一种软件开发方法,它使开发人员能够通过图形界面、拖曳组件和模型驱动的逻辑,快速地构建和部署应用程序,而无须编写大量的代码。而低代码平台就是使用低代码进行开发,能快速部署应用程序的平台。低代码平台旨在简化应用程序的开发过程,降低开发难度,缩短开发周期,并使非专业人士(如业务分析师、产品经理等)也能够参与到应用程序的开发中。
低代码平台具有以下特点。
● 可视化界面:通过直观的图形界面设计应用程序,用户可以拖曳组件以构建应用的界面和功能。
● 快速开发:低代码平台提供了一系列预构建的组件和模板,这些组件和模板可以轻松地集成到新应用程序中,从而大大缩短开发时间。
● 易于维护:由于低代码平台减少了编写代码的数量,因此维护应用程序变得更简单。当应用程序需要进行修改或升级时,可以通过图形界面轻松实现,而无须深入了解底层代码。
● 可扩展性:很多低代码平台允许开发者编写自定义代码以实现特定功能,这为应用程序提供了更高的灵活性和可扩展性。
低代码技术使企业能够更快地响应市场需求,提高生产力,并降低开发成本。它已经在各个行业和各种场景中得到广泛应用,包括业务流程自动化、客户关系管理、移动应用程序开发等。
低代码也被称为aPaaS(Application Platform as a Service,应用程序平台即服务)产品。Gartner对aPaaS所下的定义是:“这是基于PaaS(Platform as a Service,平台即服务)的一种解决方案,支持应用程序在云端的开发、部署和运行,向用户提供软件开发中的基础工具,包括数据对象、权限管理、用户界面等。”
aPaaS隶属于PaaS。在云架构中,PaaS是中间层,其上层是SaaS(Software as a Service,软件即服务),其下层是IaaS(Infrastructure as a Service,基础设施即服务)。SaaS供应商将应用软件统一部署在自己的服务器上,用户可以在互联网上直接访问,即开即用。常见的SaaS产品包括CRM(Customer Relationship Management,客户关系管理)、OA(Office Automation,自动化办公)、ERP(Enterprise Resource Planning,企业资源计划)等。IaaS本质上是一种IT基础设施。IaaS供应商向用户提供计算、存储、网络等基础硬件资源,用户可以按量付费,租用IaaS供应商部署好的硬件资源,并在这些基础硬件设施之上部署和运行各种应用程序。而PaaS将研发应用程序的平台作为一种服务,允许用户在平台上完成应用程序的开发、部署、运行和管理。
除了aPaaS,PaaS还包括iPaaS(Integration Platform as a Service,集成平台即服务)。Gartner对iPaaS所下的定义是:“促进开发、执行和集成流治理同任何本地(On-Premises)及基于云的流程、服务、应用、数据连接的一套云服务,可以在独立的或多个交叉的组织中进行”。iPaaS连接企业内部的各种应用程序、系统和技术,是集成和打通平台,它允许部署和维护集成流,而不需要在企业内部或企业与第三方之间使用硬件或插件。
B端需求最大特点是非标准化,非标准化会带来效率问题。而市场对应用开发的需求将大大高于IT公司的产能。在数字化转型浪潮之下,企业的应用开发需求会十分庞大。
在aPaaS,即低代码上,可以构建大量业务应用,解决前台敏捷化应用需求。这些应用往往会和已有的系统进行集成。iPaaS可以解决应用集成和数据集成的问题,实现大批量的数据传递、转化、异构系统整合等,大幅度提高集成效率。此外,aPaaS和iPaaS的融合会沉淀大量中间交易数据,这些数据被采集、加工、处理、分析后形成数据资产,提升企业数据应用价值。
Gartner研究副总裁兼杰出分析师Yefim Natis表示:“iPaaS已在全球进入主流采用起步期,覆盖了20%至50%的全球头部企业。”未来aPaaS和iPaaS的融合将有望成为企业标配,大幅度加快企业数字化转型步伐,为企业构建面向未来的下一代敏捷化IT架构。
尽管低代码的概念在2014年才被提出,距今不过短短九年时间,但与其相关的概念和技术已经有相当长的历史。
1.4GL
低代码的历史,最早可以追溯到20世纪80年代,第四代编程语言(4GL)的诞生。第四代编程语言旨在简化编程过程,通过高度抽象来提高开发效率。尽管这些语言不是纯粹的图形化工具,但它们在简化编程过程方面迈出了重要的一步。
2.RAD
20世纪90年代,RAD(Rapid Application Development,快速应用开发)方法诞生,它鼓励迭代开发、原型设计和用户参与。RAD方法在当时的软件开发工具中得到了广泛应用,这些工具使用图形界面、预构建组件和代码生成技术,使开发人员能够更快地构建应用。
3.BPM和EAI
21世纪初,BPM(Business Process Management,业务流程管理)和EAI(Enterprise Application Integration,企业应用集成)平台开始出现。BPM是一种以规范化构造端对端的业务流程为中心,以持续提高组织绩效为目的的系统化方法。EAI是集成基于不同平台、使用不同方法建立的异构系统应用的一种技术。这些方法和技术为企业提供了新的可视化工具,来设计、执行和管理业务流程,使非技术人员可以更容易地参与到应用开发的过程中。
4.MBaaS
2010年,随着智能手机和移动应用的普及,MBaaS(Mobile Backend as a Service,移动后端即服务)平台开始流行。MBaaS平台提供了一种简化移动应用开发的方法,通过提供预构建的后端服务、API和可视化工具来加速移动应用的开发和部署。
5.低代码平台的兴起
21世纪10年代中期左右,一些著名的低代码平台(如OutSystems、Appian、Mendix等)开始在市场上崭露头角。这些平台继承了前面几个阶段的优势,提供可视化开发、预构建组件、代码生成和集成服务等功能,使低代码平台能够为企业提供更快速、更简单的应用开发方法。
2018年发生了美国低代码独角兽企业OutSystems获得1.5亿美元的融资和西门子以7亿美元的价格收购低代码平台Mendix两件大事,低代码进入资本家和公众视野,市场进入爆发期。
6.无代码平台的出现
在低代码平台的基础上,无代码平台应运而生。无代码平台进一步简化了应用开发过程,让没有编程背景的用户也能够通过拖曳组件、可视化工具和配置参数来构建功能完备的应用。无代码平台的典型代表有WiX、Bubble等。
中国低代码的发展阶段与全球低代码发展趋势紧密相连。
1.前期实验阶段(2000年—2010年)
在全球快速应用开发概念逐渐兴起的背景下,中国也开始进行了一些探索性的尝试。这一阶段诞生了一些表单设计器、报表工具和流程设计器的集合,功能较简单,低代码平台初见雏形,为后来更全面的低代码平台的发展奠定了基础。
2.成熟发展阶段(2010年—2020年)
随着全球低代码市场的迅速发展,中国的低代码平台也逐渐成熟。许多国内企业开始研发和推广低代码产品,这一阶段涌现了一批如今在国内领先的低代码平台,如泛微协同办公、阿里钉钉等。这些平台开始提供更加丰富的组件库、可视化设计器和集成服务,帮助企业快速构建业务应用。
3.行业竞争与创新阶段(2020年至今)
随着市场需求的不断增长,低代码在中国市场的竞争日益激烈,各大厂商纷纷推出自己的低代码产品,如百度智能云、华为云微应用等。此外,一些创新型创业公司也加入低代码市场竞争,如得帆等。在竞争的推动下,低代码平台的功能不断丰富,技术水平不断提升,为用户带来更好的开发体验。
我国低代码行业的发展与时代发展也有密切的关系。低代码的出现顺应国家数字化转型大潮。企业想实现数字化转型,有两种技术路径,一是自行研发数字化系统,二是借助第三方平台。自行研发对企业开发人员有极大的要求,大部分企业IT人员短缺,难以依靠自身力量完成数字化转型,寻求适合的第三方平台是大部分企业的首选。
简单来说,低代码的优势就是降本、增效、提质,使不懂开发的人也能完成应用的搭建,节省人力,提高效率。再加上低代码个性化和灵活性的特点,低代码产品往往能第一时间实现传统应用开发难以满足的紧急业务需求。
近几年低代码产品不断更新迭代,产品架构与设计能力不断提升,更多大规模、高复杂度的场景也能通过低代码实现,低代码的价值得到更多企业的认可。
低代码发展的历史反映了软件开发行业对提高开发效率和降低开发复杂性的持续追求。随着技术的进步和市场需求的变化,低代码平台也在继续演进,为企业提供更加强大和灵活的解决方案与应用开发工具。
无代码也被称为零代码。无代码平台是指无须编写任何代码就能快速搭建应用的开发平台,主要面向非开发人员。一般来说,无代码平台被归为低代码平台。
低代码平台与无代码平台的相同点如下。
● 目标用户相似:低代码平台和无代码平台都致力于降低应用开发的门槛,让更多的人参与到应用开发过程中,特别是非技术人员。
● 可视化开发方式:低代码平台和无代码平台都强调可视化开发,允许用户通过拖曳组件、设置属性和配置参数来构建应用。
● 加速应用开发效率:低代码平台和无代码平台都通过预构建组件和集成服务来简化应用开发过程,提高开发效率,缩短开发周期。
低代码平台与无代码平台的不同点如下。
● 编程能力要求不同:低代码平台通常需要用户具备一定程度的编程能力,尤其是在进行复杂的逻辑处理和定制功能的时候。而无代码平台则完全不要求用户具备编程能力,任何人都可以通过无代码平台轻松构建应用。
● 定制化程度不同:低代码平台提供了更高程度的定制化能力,允许开发人员在必要时编写代码来扩展或定制功能。而无代码平台在定制化能力方面相对受限,主要依赖平台提供的预构建组件和配置选项。
● 应用复杂性不同:低代码平台通常适用于构建更复杂的企业级应用,具有较强的扩展性和灵活性。而无代码平台则更适合构建简单的应用,如小型网站、简单的企业内部工具等。
总的来说,低代码平台和无代码平台在某些方面具有相似性,但它们在编程能力要求、定制化程度和应用复杂性方面有所不同。根据项目需求和团队配置,企业可以选择最适合的平台来满足他们的应用开发需求。
低代码市场这些年的“热”绝不是空穴来风,与传统的编程开发方式相比,低代码有众多优势,足以让企业和用户选择通过低代码和无代码的方式来构建应用。使用低代码平台构建应用有以下优点。
● 降低开发门槛:在低代码平台上构建应用,只需要少量甚至完全不需要编程工作,非技术人员也能参与到应用开发过程中,缩小了技术人员与业务人员之间的技术鸿沟。
● 提高开发效率:传统应用开发周期长,效率低,导致企业错过业务和机会,是所有企业系统开发的痛点。低代码平台通过预构建组件和可视化工具,简化应用开发过程,降低开发工作量,使开发团队能够更快速地构建和部署应用。
● 降低开发成本:使用低代码平台可以减少对高级开发人员的依赖,企业不需要组建昂贵的应用研发团队。没有技术背景的用户能独立完成应用的简单搭建。复杂的业务只需要业务人员和几位技术人员就能完成搭建。此外,低代码以其封装的高质量代码,还能减少后期因代码质量低而产生的运维成本。
● 灵活性和可扩展性:低代码平台提供了高度的定制化能力,允许开发人员根据业务需求进行定制开发,不仅完美契合企业当下的业务需求,还能满足企业不同阶段的业务需求。此外,很多低代码平台还支持与其他系统和服务进行集成,从而提供更丰富的功能。
● 快速适应市场变化:低代码平台可以帮助企业快速响应市场变化,迅速调整和优化业务流程,完成系统更新维护和需求变化导致的二次开发,从而使企业保持竞争优势。
● 统一业务认知:基于可视化的应用开发环境,借助表单工具、流程设计和数据统计等模块,业务人员和技术人员能快速完成对业务理解的统一,在降低业务人员和技术人员的沟通成本的同时,能快速完成从业务构想到系统落地的完整闭环。
低代码正在逐步帮助企业解决业务问题,低代码比较常见的应用场景如下。
● 协同办公场景:与OA产品相比,低代码更加灵活、轻量化,还具备独立的应用扩展能力。所有专业系统外的需求都可以使用低代码,构建内部应用中心。低代码还可以帮助企业建立统一的协同办公环境,实现跨部门、跨地区的高效沟通与协作。
● 数据收集分析:数据填报业务,例如员工评价、客户留资等,是随机的、烦琐的、不确定的、经常变化的。通过低代码,可以快速响应和实现。低代码还可以帮助企业整合各类数据,进行数据清洗、分析和可视化,为企业决策提供数据支持。
● 跨系统流程:流程管理中落实到具体的4级流程存在大量的表单和审批场景,传统BPM方式对开发和技术的依赖较重,低代码可以降低对技术的依赖,把业务交还给业务部门。
● 业务流程自动化:低代码可以帮助企业将烦琐的业务流程自动化,提高工作效率,减轻员工负担。
● 现场管理业务:例如制造现场、物流现场、园区管理等。目前大量的线下业务、纸质化场景都依赖人工经验,通过低代码可以快速将业务线上化、数字化。
● 管理场景应用:围绕企业内部运营管控构建的管理应用,常见于HR、IT、财务等领域,例如HR共享服务、IT项目管理(研发&交付)、财务费用预算。如人力资源管理系统可以实现员工招聘、信息管理、考核等功能;财务管理系统可以进行财务数据的整合与管理,快速生成各类财务报表,满足监管和内部管理需求。
● 定制化业务应用开发:企业可以利用低代码平台快速构建更多定制化业务应用,满足特定业务场景的需求。如客户关系管理系统,可以实现客户信息的整合、分析和运营;又如供应链管理系统,可以优化供应链管理流程,提高物流效率,降低运营成本。
● 核心系统定制:解决ERP(Enterprise Resource Planning,企业资源计划)、PLM(Product Lifecycle Management,产品生命周期管理)、MES(Manufacturing Execution System,制造执行系统)等成熟套装软件外围业务精细化问题,引入低代码平台可以将套装软件模块化解耦和集成。
综上所述,低代码在各个业务领域都有着广泛的应用前景。在实际使用中,企业使用低代码进行应用开发,能够减少工作量,满足自身个性化需求,提高开发效率。企业就可以用更少的时间、更低的成本,将自己的业务数字化、线上化,实现降本增效。可以说,几乎每个商业组织都需要一套低代码平台。