2020年,Gartner更新并发布了针对企业级低代码开发平台的关键能力报告《企业低代码应用平台的关键功能》,与同期的上一份报告相比,该报告首次出现了“ API和集成”和“平台生态系统” 。
一、低代码开发是什么意思?低代码开发基于可视化和模型驱动的概念,结合了云原生和多终端体验技术,它可以在大多数业务场景中,帮助企业显著的提升效率,还能进一步降低企业开发成本,也就是我们所说的“降本增效”。为专业开发者提供了一种全新的高生产力开发范式。
另一方面,低代码能让不懂代码的人通过“拖拉拽”开发组件来完成应用程序的构建。从某种意义上说,低代码可以弥补日益扩大的专业技术人才缺口,同时也可以促进企业与技术之间深度协作的最终敏捷形式。
1、来自Wikipedia的低代码定义
从Wiki的定义中,我们可以提炼出几个关键信息:
低代码开发平台(LCDP)本身也是一种软件,它为开发者提供了一个创建应用软件的开发环境。对于程序员而言,低代码开发平台的性质与IDEA、VS等代码IDE(集成开发环境)几乎一样,都是服务于开发者的生产力工具。
与传统代码IDE不同的是,低代码开发平台提供的是更高维和易用的可视化IDE。大多数情况下,开发者并不需要使用传统的手写代码方式进行编程,而是可以通过图形化拖拽、参数配置等更高效的方式完成开发工作。
2、来自Forrester的低代码定义
相比Wiki的版本,Forrester定义更偏向于阐明低代码所带来的核心价值:
低代码开发平台能够实现业务应用的快速交付。也就是说,不只是像传统开发平台一样“能”开发应用而已,低代码开发平台的重点是开发应用更“快”。更重要的是,这个快的程度是颠覆性的:根据Forrester在2016年的调研,大部分公司反馈低代码平台帮助他们把开发效率提升了5-10倍。而且我们有理由相信,随着低代码技术、产品和行业的不断成熟,这个提升倍数还能继续上涨。
低代码开发平台能够降低业务应用的开发成本。一方面,低代码开发在软件全生命周期流程上的投入都要更低(代码编写更少、环境设置和部署成本也更简单);另一方面,低代码开发还显著降低了开发人员的使用门槛,非专业开发者经过简单的IT基础培训就能快速上岗,既能充分调动和利用企业现有的各方面人力资源,也能大幅降低对昂贵专业开发者资源的依赖。
二、低代码开发平台的特点?1、提效降本
对研发人员的提效:相比于传统开发模式,低代码开发搭建的抽象程度更高,通过牺牲部分定制性换来更高效的开发方式。
对企业客户的提效:研发一个低代码开发平台,专业性要求很高,而且用户群会很窄,因此需要针对不同用户的诉求开发定制方案,本质上是通过降低通用性换取更低的上手成本,或者针对某个领域降低上手成本,比如数据图表搭建、CRM客户管理、生产管理、OA协同办公系统搭建等。
2、质量保障
项目延期交付已成为行业常态,而瓶颈几乎总是开发人员(对机器能解决的问题都不是问题);优秀的开发人才永远是稀缺资源,还贼贵;软件质量缺陷始终无法收敛,线上故障频发资损不断。有了低代码开发平台,简单培训一下,不懂代码的业务人员也能立刻搭建系统,而且有问题可以随时找低代码厂商处理。
3、扩大应用开发劳动力
通过让大部分开发工作可以仅通过简单的拖拽与配置完成,低代码开发平台(包括零代码)显著降低了使用者门槛,让企业能够充分利用前面所提到的平民开发者资源。部分纯零代码需求场景下,低代码还能让业务人员实现自助式(self-service)应用交付,既解决了传统IT交付模式下的任务堆积(backlog)问题,避免稀缺的专业开发资源被大量简单、重复性的应用开发需求所侵占,也能让业务人员真正按自己的想法去实现应用,摆脱交由他人开发时不可避免的桎梏。
三、低代码开发的核心能力1、易用性-无代码应用开发
易用性,在不写代码的情况下能够完成的功能多寡。该指标标识低代码开发平台生产力的关键指标。
2、应用用户体验
使用低代码开发平台所构建的应用程序的用户体验。该指标能够决定最终用户对开发者的好评程度。一般的说,独立的软件开发团队为企业客户做项目交付时,对该能力的要求会显著高于企业客户自主开发;开放给企业的客户或供应商的项目,对该能力的要求会高于企业内部用户使用的项目。
3、数据建模和管理
数据建模和管理的便利性。该指标就是通常所讲的“模型驱动”,相比于表单驱动,模型驱动能够提供满足数据库设计范式的数据模型设计和管理能力。开发的应用复杂度越高,系统集成的要求越高,这个能力就越关键。
4、流程和业务逻辑
流程应用与业务逻辑开发能力和效率。这个能力有两层,第一层是指使用该低代码开发平台是否可以开发出复杂的工作流和业务处理逻辑;第二层是开发这些功能时的便利性和易用性程度有多高。一般的说,第一层决定了项目是否可以成功交付,而第二层则决定项目的开发成本。不论如何,使用者都应关注第一层。在此基础上,如果项目以工作流为主时,第二层也应该作为重要的评估指标。
5、平台生态
开发平台的生态系统。低代码开发平台的本质是开发工具,内置的开箱即用的功能无法覆盖更多应用场景。此时,就需要基于该平台的完整生态系统,来提供更深程度、更全面的开发赋能。很多开发平台都在建立自己的插件机制,这就是平台生态的一个典型体现。
6、接口和集成
编程接口与系统集成能力。为了避免“数据孤岛”现象,企业级应用通常需要与其他系统进行集成,协同增效。此时,内置的集成能力和编程接口就变得至关重要。除非确认可预期的未来中,项目不涉及系统集成和扩展开发,开发者都应该关注这个能力。
值得一提的是,在另一家权威行业机构,Forrester的《2019 Q1 Forrester Wave:面向应用程序开发和交付专业人员的低代码开发平台》报告中,编程接口被认定为企业级低代码开发平台的重要标志,不具备编程接口的“低代码”被划归为“无代码”,转移到那些只适用有限用例的平台报告中。
7、架构
系统是否支持更先进的架构、清晰的分层,以对接物联网IoT、RPA机器人、ML机器学习等新的技术?如果开发者希望自己开发的应用有更长的生命周期,深入了解低代码开发平台产品的架构就变得尤为重要。
8、服务质量
服务质量。与上一点类似,服务质量也是衡量运行于公有云模式下低代码开发平台的指标。这里的服务质量,除了通常所说的“无故障使用时间”外,还要考虑资源是否支持独占模式,避免某一个应用的高负荷,导致其他应用不可用或出现性能劣化。
9、用户模型与软件开发周期
用户模型与软件开发周期支持。软件开发的生命周期中,除了开发和交付,还需要包含设计、反馈、测试、运维等多个环节,如系统开发早期的用户模型建立和验证过程通常需要快速的Mockup和迭代,投入的开发力量甚至不少于正式开发。如果一套低代码开发工具具备全生命周期所需的各项功能,将会大大简化开发者的技术栈,进一步提高开发效率。开发者所开发的系统规模越大,这一能力就越重要。
10、治理
治理(开发管理)。企业级软件的项目规模通常比较大,而且业务更关键,这就对开发团队管理提出了更高的要求。现代软件开发中主推的敏捷开发是否能在低代码中落地,是衡量开发管理能力的重要指标。这通常包含了代码库权限管理,版本权限管理,发布权限管理等一系列功能,帮助开发团队负责人降低软件开发管理过程中带来的各种人为风险。开发团队规模越大,越推荐开发者关注这一指标。
11、安全与合规
低代码开发平台需要在部署方式、系统安全机制和权限管理和控制功能等层面发力,全方位赋能开发者构建安全的,符合企业规则的企业级应用。支持本地部署、全SSL数据传输、密码强度策略、跨域访问控制、高粒度的用户权限控制等都是该能力的具体体现。大型企业、特定行业企业(如军工、金融等)通常对该指标的关注程度会更高一些。
合理并且有效地运用低代码,不仅可以让我们工作高效地运行,还能最大程度保证团队目标的达成。我推荐使用织信,它内置100+标准应用模板,覆盖:数字化校园、OA协同办公、ERP进销存、CRM客户管理、人事绩效财务、企业服务、个人及组织等多个应用场景。点击一键安装,即可免费试用。并且拥有在线搭建功能,可根据企业需求实现自主配置。是帮助企业开启数字化转型的重要引擎。现在注册还可享终身免费使用权益。
在选平台之前,首先要确定以下几个问题:
第一步 确定你需要做什么?
第二步 找一款适合你的。
第三步 开始学习如何使用。
咱们一步一步来!
第一步:确定你需要做什么?
这个问题其实并不简单,我把需求大体分为这么几类:
1. “我想学习编程,我想转行互联网,我需要做一些真实的项目出来,好找工作!”
互联网是为数不多的朝阳产业,是基础工具,也是基础语言,美国幼儿园里就开始教编程了,国内也要求把编程课程引入中小学教学大纲中,其重要性,我就不多说。另外,互联网总体来说是高收入行业(看看10几年前央视的广告和现在的赞助商有啥区别吧,马上就能理解),方式方向应该没错的。就算每10年可能会有一个轮回和低谷,但是确实也找不到什么新的经济的增长点了。所以坚定地投身互联网吧!
为什么要学编程?原因很简单,程序是互联网的“语言”,不会语言在互联网的世界中就会举步维艰。而我认为,这里面最核心的程序思维,就程序本身而言,语言也有很多种,但是思维方法,构建应用的方法,大同小异,因此如果掌握好了这种程序构建“逻辑”,将为未来发展扫清障碍。
另外建议,学习简单使用一些语言,低代码平台是非常不错的选择。我们认为,这也是语言发展的大方向,不会问题。
2. “我会一些编程,我想做外包,中小项目为主”
你可能会前端或者后台某一两项技术,但是还不足以完成整个外包项目,另外,觉得用代码写太浪费时间,而且有些地方考虑不周到,项目完成质量也不高。这种情况下,选择低代码平台是非常明智的。通常效率都会有大幅提升,如果选择正确的。
3. “我需要做一个具体的项目,包含工作流、表单部分技术,我希望能快速实现”
作为企业内部OA的某一些具体需求和实现,低代码平台也有一些专门服务类似需求的引擎,最为常见的就是BPM工作流管理以及表单系统,对于这些系统都有非常成熟的低代码解决方案。开发工作量往往可以降到最低,而且质量通常有保证。
4. “公司需要重构自己内部的业务中台,数据也需要统一,付能公司研发能力”
这个往往对平台要求比较高,需要开发平台提供完成的“开发体系”,只有这个体系完备,才能保证一个平台解决所有问题,否则如果平台技术无法实现,那成本就比写代码还要高很多。
5. “公司需要技术架构统一,高效,现在都是外包团队在做项目,技术架构不统一,无法管理”
要求具备完整的“开发体系”,同时,架构要比较简单和先进。
第二步:寻找一款适合你的。
大家重点关注一下:三个点和两个坑,就不会跑偏。
第一点:这个平台自身能够干什么(如果不嵌入代码的话)?道理很简单,代码肯定啥都能做,但是这个和平台关系不大,还是要看平台本身除了代码能干嘛,这才会对你提升效率;
第二点:开发的效率如何?(这里重点考虑,有多少代码可以不写?压缩比率)低代码本身最核心的意义还是在于少写或不写代码,而生成高效运行代码。另外,你也需要关注平台产品本身的设计,有些平台描述很牛逼,但是根本没法用(异常难 *** 作),处处是Bug;
第三点:开发出来的产品质量如何?一是看看开发出来的产品的架构是否先进,另外,运行时,实际跑跑,看看加载速度,是否卡顿就清楚了,在试的时候,尽量找复杂的应用来实验,不然看不出效果的。
下面来说一下两个坑:
第一坑:低代码坑,其实由于低代码这个概念在国内也就才一年多时间,因此很多公司都是临时起意,说我们来开发一个低代码平台吧,而国外很多平台都已经开发了十几二十年了。因此很多平台都是从一些SaaS开发平台转变过来的。什么意思呢,就是这种平台还处于很初级“PaaS”概念,并不完备(只是提供一些SaaS开发的接口的封装),如果用来开发他们以前研究的SaaS相关产品,效果还不错,但是开发别的,就都需要写代码了。
这就意味着,你花了挺多时间去学习一个低代码平台,结果开发的时候还需要大量写代码,或者只能开发很窄的领域,这个就有可能“事倍功半”了。
第二坑:看上去很好,实际Bug太多;看上去给了你很多实现路径,其实一个都跑不通。从现在的产品理念来看,只需要提供给用户一条最方便的路径来实现最好的产品就行了,不需要给用户提供成千上万的选择,选择本来也是一件成本很高的事情。Perl当年就是犯了这个错误,而Python则吸取了这个教训。
第三步:学习如何使用
建议大家在分析和选择的时候,多去看教学视频,少去看介绍,教学视频才是你后面真正的 *** 作,文字介绍往往具有很强不确定性和迷惑性。
最后希望大家认真选择和学习低代码平台,没准你以后吃饭就靠TA了!毕竟这个是互联网编程语言的发展趋势,而互联网又是社会和技术的发展方向。
另外,现阶段低代码平台比较多,各式各样,但多数都是针对某一些特定场景和系统进行开发的,而且语言也多种多样,有写SQL的,有写前端代码的,有写后台代码的。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)