如今,恐怕没有比IT更爱发明新概念的行业了。一方面,源自于信息技术的高速开展,创新层出不穷;另一方面,可能是源自销售的需要,客户总有些猎奇的心理,先不论产品是否充沛满足客户的需求,至少新的概念先从心理层面拨弄客户的心扉。
那么,低代码 开发是真正的技术创新还是炒冷饭呢?
1. 什么是低代码开发?
实际上, 低代码开发并不是什么新颖事。20多年前的VisualBasic 在上世纪90年代就是一个低代码工具,更久远一点,可以追溯到case tool 等代码生成工具。
低代码开发可以协助人们以最少的代码快速创建和部署应用程序,降低开发和部署应用程序的总体本钱,并实现快速开发。此外,可以为非技术用户提供更友好的用户界面,使他们更容易创建和修改应用程序。也就是说,允许开发者和业务人员通过图形用户界面创建业务应用软件 ,而不是传统的计算机编程。通过拖放 UI 组件,可视化地构建应用程序取代了编码。项目的所有组件,例如前端和后端代码和配置文件,都是基于最佳理论自动生成的。
其中,低代码开发平台是关键,通常允许没有编码技能的业务用户处置自己的问题并优化日常操作。这些平台提供了一个笼统层,使用户可以点击、拖放、配置并最终创建一个无需编程或少量编程的应用程序,零代码 开放实质上是低代码开发的一个子集。
典型的低代码开发平台包括以下组成部分:
可视化 IDE ——这是一个用于定义应用程序的数据模型和工作流的可视化工具
后端组件或效劳的连接器——用于管理数据的存储和检索
应用程序生命周期管理器-这包括用于在阶段和消费环境中构建、部署和管理应用程序的工具
低代码平台的图形用户界面可以自动化开发过程中的元素,消除对传统编程方法的依赖,进步敏捷性、灵敏性和本钱效率,同时提供具有连续性的业务价值。这些平台减少了开发软件所需的时间,因而商业应用程序可以更快地交付,组织中更广泛的人员可以为应用程序的开发做出奉献,即便是全职的专业开发人员也可以与业务人员一起使用这些低代码工具。
2. 为什么呈现低代码平台?
“开源节流”不时是企业的主旋律,企业需要敏捷、适应性和竞争力来在这个数字时代坚持领先地位。为了交付业务价值,坚持市场领先地位,需要提供简单、直观和更好的客户处置方案。对于沉浸于传统软件开发方法的组织来说,这可能是一个挑战。低代码平台可以通过简化工作流程和加速组织中的自动化方案来满足这一需求。
近些年的疫情促使企业需要实现流程自动化,而低代码平台强调了这一数字化转型的必要性——
加快了价值评估的时间
减少了设计的影响
拥抱共同发明
组织小型的敏捷团队
采用以用户为中心的设计
低代码开发平台为企业提供了一种开发和部署应用程序的方法,不雇佣开发人员的企业仍然可以使用低代码平台创建应用程序。软件行业,尤其是互联网的开发工程师本钱较高,低代码平台允许没有编码经历的技术和商业专业人士开发应用程序,并可能填补组织中的人才缺口。
另外,对于SaaS 效劳的提供者而言,低代码或容许以提供产品的附加价值。
Gartner 曾预测到2024年65% 的应用开发功能将在低代码平台上执行,也预测到那时66% 的大公司将使用低代码软件,但是, 老码农并不苟同。
3. 如何从使用低代码平台中获益的呢?
低代码平台可以协助企业填补开发人员的人才缺口,允许业务和 IT 专业人员在没有开发经历的情况下构建应用程序,还可以通过减少开发时间来进步开发人员的工作效率。
通过低代码平台,开发者放弃了一些控制权,固化了一些指令,从而获得了更高的消费力水平。它还让开发变得更容易为更多人所接受,这些人可能没编程技能,但可以使用低代码工具来构建应用程序。
在一项调查中显示,68% 的人说他们创建无代码应用的主要原因是因为低代码处置方案更适宜他们组织的需要,61% 的人说这是因为他们可以随着工作负载和需求的变化更快地改变应用。调查发现,在使用无代码平台方面,安全问题和高管认同度被列为最受关注的问题,74% 的 IT 专业人士表示,他们认为低代码处置方案是快速开发应用程序的关键。
低代码平台也有助于弥合业务和 IT 之间的鸿沟,因为它们使业务部门可以依照自己的需要创建应用程序,而 技术团队可以在幕后停止任何必要的编码修复,而业务部门不会注意到应用程序运行方式的变化。低代码平台还可以为企业提供更快速的应用程序交付,协助实现 DevOps 的持续交付目的。
如今,数字化的需求是如此之高,在某些方面,低代码可能是某些企业可以跟上节奏的唯一方式。
4. 低代码平台的局限性是什么?
虽然许多公司使用的日常应用可以使用低代码平台构建,但这些工具也有局限性。假设不需要开发和运营人员,企业也不可能总是可以完全构建和管理应用程序。在概念验证阶段,低代码平台可以成为一个强大的工具,并可以简化一些 UI/UX 问题,以使应用程序运行得更快,但仍然需要开发人员来定制项目,创建后端 API,并管理根底设备部署。
低代码平台的局限性意味着仍然需要熟练的软件开发人员,随着低代码开发平台在整个企业中的激增,这种转变的结果是一种新的环境,在这种环境中,开发人员处置软件开发的技术方面,而使用软件的部门正在根据自己的愿望设计 UI。
5. 什么是低代码微效劳?
假设说早期的低代码偏重于某一软件应用可视化编程的话, 那么如今的低代码平台与过去的区别在生成应用软件的形式, 即面向的更多是分布式系统, 尤其是微效劳系统。
微效劳将开发人员从技术堆栈、单体构造等约束中解放出来。低代码微效劳通过增加智能性进一步加强了这一点。只要应用程序简单、干净、集成点少,低代码平台可以大大节省基于微效劳的应用程序的开发时间。假设基于微效劳的应用程序不需要与其他数据库集成,那么就更简单一些了。
但是,在开发基于微效劳的大型应用程序时,面向微效劳的低代码方法并不理想。原因在于应用程序可能需要在实时性、数据库集成、消息传送等需要自定义的特性中停止数据和信息交换。因而,测试基于低代码的微效劳应用是另一个挑战。
低代码平台为微效劳的展开提供了一些好处,例如:
多级可重用性: 低代码微效劳在微效劳体系构造提供的代码可重用性之上提供了更多的层。开发人员可以搜索和使用智能库,并从应用程序功能列表中停止选择,这些功能可以通过简单的拖放来添加。
快速上市时间: 低代码可以为您的应用程序提供最低的上市时间,这要归功于多级可重用性。平台的自动化才干使应用程序可以快速构建,一个可能花费大量时间构建的微效劳系统如今可以随时创建。
改善客户体验-低代码开发促进更好的客户体验。
普通微效劳在可以处置的数据和提供的结果方面受到相对的限制。另一方面,低代码平台提供了更加专业化的微效劳,可以根据需求量身定做。
6. 企业级应用使用低代码平台的利弊是什么?
虽然低代码平台很强大,但目前还不适宜构建复杂的企业应用,这意味着开发人员面临一个选择。面对企业级应用,使用低代码平台停止软件开发的好处包括:
更快的上市时间:实现低代码开发最明显的好处是节省时间。低代码开发平台可以快速入门,并且不需要从头开端编写代码就能生胜利能性的原型,可以使用预先创建的模板快速创建新的应用程序。
减少技术债务:低代码开发使企业可以减少浪费,简化和缩短开发,并加速部署,从而防止技术债务。
易于更新-低代码开发使得更改应用程序和调整它们以满足新的需求变得简单。低代码开发防止了复杂的编码需求,从而允许在需要时快速更新。
更高的消费力:由于低代码开发可以在更短的时间内生成更多的应用程序,因而它促进了快速开发和发布周期。
降低本钱:低代码软件开发为组织提供了一种更廉价、更直接的方法来设计符合其特定需求的业务流程和工作流。它使企业减少了对额外开发人员的需求,从而降低了开支。
增加敏捷性:低代码开发意味着快速和简单的更新。大多数应用程序都有预先构建的用户界面,允许您基于现有逻辑创建工作流和业务模型。
同样,使用低代码平台停止软件开发的缺点也是明显的:
缺乏自定义——虽然低代码平台的预构建模块使用起来非常方便,但是无法使用它们来自定义应用程序。即便可以定制低代码平台,但只能在有限的范围内定制。
有限的集成——由于低代码平台固有的限制,有时将它们与特定的系统集成是不可行的。
供给商锁定——有一些供给商消费干净、规范化的代码,使得在平台中使用应用程序变得简单。但是,许多专有系统要么阻止代码迁移,要么创建不可读、不可重用的代码。这使得将应用程序移植到另一个平台变得困难,从而导致供给商被锁定。
安全性和可靠性——使用低代码平台,意味着不得不在很大水平上依赖第三方应用程序和效劳。由于开发人员没有完全的控制权,它可能会带来安全风险。低代码平台的内置安全性可能是不够的。
7. 低代码平台的市场是什么样的?
Garnter的预测显示,到2025年,低代码市场规模将到达455亿美圆,年复合增长率可能到达22.7% 。据 Forrester 报道,在2018年的时候,在低代码领域已经存在大约67家不同的供给商,还有几十家小规模或区域性的供给商。报告指出,在大型供给商中,只要 Salesforce 在2017年之前使用了 Force.com 的低代码平台。然而从那时起,戴尔、微软、甲骨文、 IBM 和 SAP 也参与了这个市场,领先的低代码开发平台包括 AppSheet、 Oracle、 Nintex、 OutSystems、 Appian、 Quick Base 等。
例如,Appian 是市场上最流行的低代码处置方案之一。它易于学习,提供优秀的文档,并且包括大量经常更新的现有智能效劳。Mendix 从2005年开端,已经有超越4000家公司使用了这个平台。使用 Mendix,开发团队可以快速构建和部署在线门户网站、自动化工作流、数字化流程、用于客户参与的挪动应用程序,甚至可以更新现有的系统。
Microsoft Power Apps 与其他公司采用低代码的方式有着根本的不同。其中一个原因是 Power Apps 已经融入了人们日常使用的微软产品中。因而,使用 Power Platform 构建的任何处置方案都可以很容易地分布到公司中每个人的工作流中。换句话说,假设业务依赖于一系列 Microsoft 工具,那么使用 Power Apps 意味着可以定制这些工具,以完美地适应各个团队的工作流程。Power Apps 不只专注于 MS 软件,还可以连接到 SAP、 Oracle 和 Azure Cloud。Power Apps 不只关注商业智能和挪动应用,还关注应用、面向公众的网站、机器人流程自动化、流程分析、聊天机器人、 BI 仪表板、后端数据系统和业务逻辑。
在国内,由于对低代码平台的认知不同,老码农自己的关注度也不够,还没有找到详细的分析报告。
8. 低代码开发需要什么?
假设对低代码开发感兴趣,那么仍然需要人们做一些准备。首先,需要选择一个低代码的开发平台。有许多低代码平台可供选择,在选择之前,应该分析自己的需求并探究所有这些潜在的选择,以找到满足需求的选项。
一旦选择了一个平台,就需要学习如何使用它,这可能需要一些培训资料或阅读文档。最后,还需要一些关于想要构建的内容的想法,这样可以开端“低代码开发”了。
例如,假设想做一个自己专属的语音应用,可以选择DuerOS Bot Platform(DBP, http://dueros.baidu.com/dbp)作为低代码平台,然后根据自己的创意,就可以开发应用了,详细可以参考《DuerOS的零编程技能实现》。
9. 如何开端选择一个低代码的平台?
由于有许多的供给商,企业可能很难确定从哪里开端选择过程。Forrester 提供了以下三点建议:
决定谁来做这项工作。低代码平台往往分为两个市场部分: 一部分面向开发人员,另一部分面向业务部门。企业必需决定需要一个平台的哪一方面,以及哪一方面最适宜这一目的。
找出企业想要交付的用例。每个工具都提供不同领域的功能,包括工作流和业务流程的应用,应该选择一个适宜自己项目需要的低代码平台。
创建一个包含治理的战略。不论有没有编码,构建和维护软件都很困难。从低代码平台获益最大的企业是那些制定了战略的企业,比如一个组合的管理系统,该系统可以协助员工跟踪平台中已经构建的应用程序。
这个领域的大多数供给商都有“起步阶段”的平台和免费增值效劳,尝试这些工具,开发一个应用程序并处置一个问题,一个项目一个项目的采用这些工具是非常容易的。
10. 低代码平台的典型开发用例有哪些?
对于低代码平台而言,一些典型的开发用例如下:
概念验证(POC) ——由于低代码平台允许更快速地开发应用程序,因而非常适宜原型开发。例如,可以利用低代码来创建处置业务问题的应用程序,然后使用传统的开发方法开发应用的最终版本。
快速应用程序开发——假设项目不是那么复杂或广泛,可以利用低代码平台快速交付应用程序。使用此方法构建的应用程序可能有约束、风险和限制,但可以以后解再决这些问题。
模块化 Web 应用程序——可以利用低代码的微效劳来构建模块化 Web 应用程序,也可以利用低代码的微效劳来创建一套微效劳应用。
API 生成——可以利用低代码API 生成器从现有代码中自动构建 API。
容器化——低代码微效劳也可以在容器内运行。假设低代码平台与 K8S 集成,就可以利用 K8S的容器编排功能。
一句话小结
随着组织在削减 IT 预算的同时努力跟上数字化的需求,低代码平台的采用将会有所增长。企业创新和业务敏捷性将推动低代码开发,并不意味着可以抛弃开发团队,并不意味着需要更少的代码知识。充沛利用低代码平台确实需要对软件工程有扎实的理解,虽然开发人员可能编写较少的代码,但是他们不能对代码缺乏理解。
【关联阅读】
这是你所理解的FaaS ?——无效劳计算的10个考虑
基于AWS习练深度学习时的10个Linux命令
关于软件开发,都应该晓得的10个常识
“他山之石”,语音技能开发的10个要点
醉袖迎风受落花,好代码的10条认知
纸上得来终觉浅,长大的10条建议
远程软件工程师 的 10个最佳理论
浅析dashbOA rd的10个实现原则
API设计中性能提升的10个建议
导致系统性能失败的10个原因
系统性能设计的10个反形式
软件架构的10个常见形式
IoT产品的10个最佳理论
10行Python代码的词云
性能,10点系统性考虑
无我编程的10条诫律