登录 |  注册
首页 >  网站架构 >  架构师学习之路-开发实战学习笔记 >  什么是低代码开发:讲透低代码(Low-code)

什么是低代码开发:讲透低代码(Low-code)

近年来,在数字经济迅速发展的背景下,越来越多的企业开始建立健全业务系统、应用、借助数字化工具提升管理效率,驱动业务发展,促进业绩增长。在这一过程中,和许多新技术一样,低代码(Low-code)开发被推上了“风口”。

低代码开发.png

一、低代码的定义与发展

低代码开发平台通过抽象和最小化手工编码的方式,为开发和部署定制化应用提速。作为最低标准,低代码平台必须具备低代码能力(如模型驱动、可编程的可视化开发方式等),能用于开发包含有用户界面、业务逻辑、工作流和数据服务的完整应用程序。

2014年,Forrester提出了低代码的概念。低代码是一种软件开发技术,衍生于软件开发的高级语言,让使用者通过可视化的方式,以更少的编码,更快速地构建和交付应用软件,全方位降低软件的开发、配置、部署和培训的成本。

为了实现这一目标,低代码开发平台通常由4部分构成:

  • 可视化设计器:具备可视化定义UI,工作流和数据模型的设计器,且在必要时可以支持手写代码。

  • 服务器程序:承载可视化设计器构建的应用,供最终用户通过多终端访问,具体形式如私有化部署的服务程序、运行在云端的容器或服务等。

  • 各种后端或服务的连接器:能够自动处理数据结构,存储和检索。有些低代码开发平台将其集成到了可视化设计器中。

  • 应用程序生命周期管理器:用于测试、暂存、构建、调试、部署和维护应用程序的自动化工具。

二、低代码的特点

  1. 不能仅用于或主要应用构建特定行业的应用,不能仅限于在依赖其他解决方案或平台上运行。

  2. 需要能提供给IT技术人员使用,不能只给平民开发者使用。

  3. 全生命周期:覆盖应用和相关资源的开发、版本管理、测试、部署、执行、管制、监控和管理的全生命周期。

  4. 内建数据存储:内建数据存储机制,不能依赖其他的数据库等存储服务。

  5. 数据与逻辑设计:支持用来设计数据结构和应用逻辑。

  6. 完整的界面设计:支持创建完整的应用界面,不能仅支持创建表单或管理界面。

  7. 第三方集成:支持引入第三方API或事件驱动机制。

  8. 自动运维:提供自动化的应用升级和版本管理机制。

  9. 多环境部署:支持针对多环境的一键部署,包括开发环境、测试环境、验证环境和生产环境。

  10. 社区共享:提供可供访问的应用市场,用来共享组件、模块、连接器和模板。

三、低代码的技术路线

1、行业观点

面向专业开发者的低代码平台厂商专注于核心应用场景,采用模型驱动架构,支持混合云环境。厂商以降低开发者服务为目标设计产品功能,并赢得了开发者的信任。面向业务开发者的低代码平台厂商简化了开发工作,让用户通过数据表单和可定制的工作流完成开发。厂商尝试挖掘平民开发者带来的增量,将其产品宣传为无代码/零代码。

表单驱动以数据为核心,通过拖拽构建数据表方式展开业务分析设计。适合人事行政、资料归档、OA审批、客户管理等简单任务,对完全零基础的销售、管理人员友好,可以做到完全去IDE化,像搭积木一样按流程构建程序逻辑,更贴近无代码开发。模型驱动对软件所涉及到的功能进行建模,以应用开发平台为核心,承载各种开发工具和复杂逻辑,并将其可视化,辅以少量代码。适合作为开发者技术中台核心,快速按照企业需求产出一整套系统。模型驱动与表单驱动面向不同人群与不同任务,二者并无优劣之分。

2、低代码的技术路线

将数据与业务逻辑合一的表单驱动低代码,衍生于ERP、OA中广泛使用的可配置化技术,使用体验类似于成品软件的实施;

数据与逻辑完全分离、各自独立的模型驱动低代码,是可视化开发技术发展的产物,体验上承袭了传统软件开发的生命周期。

国际主流研究机构将两种技术路线的产品分开调研,Gartner将模型驱动视为低代码开发平台的基础要求;Forrester将表单驱动的低代码平台视作“面向业务开发者的低代码开发平台”,与模型驱动的“面向专业开发者的低代码开发平台”进行了区分。

四、低代码开发者有哪些

低代码技术显著降低了软件开发的技术门槛,让更多人可以参与到软件开发中,进一步扩大软件开发者的规模,加速信息化建设。都有谁适合使用低代码技术开发软件?

从事低代码开发人员可以分成两类:

  • 服务于企业IT部门或软件的公司的IT技术人员(包含但不限于程序员、项目经理、实施顾问等);

  • 以及来自业务部门,本职工作与IT无关但参与到软件开发中的业务开发者。

低代码赋能IT技术人员

这里的IT技术人员是与“业务开发者”相对的概念,包含但不限于程序员,特指在企业或信息化提供商中,本职工作为企业信息化相关的技术人员。IT技术人员主要集中在企业信息化部门和为企业提供信息化服务(如外包开发、系统集成等)的软件公司中,典型岗位有项目经理、架构师、程序员、测试人员、实施和运维人员、DevOps等。

整体而言,IT技术人员具备以下特征:

具备技能:通常具有计算机相关的教育背景,或通过自学的方式掌握了一定的IT技能(如编程语言、数据库管理、配置管理、系统管理等)

  • 考核指标:能否保质保量地满足本单位或客户的信息化需求是核心指标

  • 学习意愿:需要紧跟技术发展趋势,跟随团队和企业技术决策,及时更新技术能力

五、低代码赋能业务人员

在低代码技术被命名之前,国际知名的研究机构们就提出了“业务开发者/平民开发者”的概念。这两个概念与专业开发者对应,专指那些向业务部门汇报但开发能力来辅助业务发展的员工。这些人和向IT部门报告的专业开发者不同,他们的主要工作职责是业务发展,软件开发只是一个辅助性工作,通常不会有相关的考核指标,得到的资源也较为有限。在传统的编码开发时代,业务开发者较为少见,有能力从事辅助性软件开发的业务人员主要集中在数据分析师、软件公司的程序员(程序员的主要工作是开发软件产品或对外交付软件项目,而不是辅助性的软件工具)等具备编程能力的人群。而低代码技术的出现,让更多的业务人员可以成为业务开发者,比如构建订单管理应用的销售主管、人事档案系统的HR、库存盘点APP的库管人员等。

整体而言,业务开发者具备以下特征:

  • 具备技能:通常没有计算机相关的教育背景,部分掌握Excel等办公软件的常用功能

  • 考核指标:能否完成业务目标是核心指标,通常不包含信息化建设相关内容

  • 学习意愿:不得不参与软件开发,通常没有主动学习IT相关技术的动力和投入

低代码开发2.png

六、低代码对业务开发者的价值

与帮助IT技术人员提升软件开发效率不同,低代码对于大多数业务开发者而言,是解决了“能不能开发软件”的问题。这就意味着,业务人员可以根据自身的应用场景,快速构建起对应的软件应用,减少了与IT部门协调确认的沟通成本,在IT部门资源紧缺的背景下,尽快扫清信息化死角。

业务开发者构建的应用主要有以下几类,除数据报表应用的业务逻辑复杂度较高而且通常需要与第三方系统集成,对业务开发者有较高的学习能力要求外,其他应用场景相对简单,更适合业务开发者使用低代码构建。

七、低代码的应用价值

低代码开发平台可以显著提升软件开发的效率,可广泛应用于各行业数字化转型升级。具体而言,开发者可以使用低代码开发平台,更简单、更快速地构建个性化应用,打造数字化平台。

原文链接: https://www.yukx.com/architect/article/details/2347.html 优科学习网什么是低代码开发:讲透低代码(Low-code)

<<上一课程
下一课程>>
推荐文章
  • 近年来,在数字经济迅速发展的背景下,越来越多的企业开始建立健全业务系统、应用、借助数字化工具提升管理效率,驱动业务发展,促进业绩增长。在这一过程中,和许多新技术一样,低代码(Low-code)开发被推上了“风口”。一、低代码的定义与发展低代码开发平台通过抽象和最小化手工编码的方式,为开发和部署定制化
  • 该框架目前正在京东App后台接受苛刻、高并发、海量用户等复杂场景业务的检验测试,随时会根据实际情况发布更新和bugFix。有对区块链感兴趣的,可以参考项目作者另一个GVP项目,java区块链底层入门。如果只是需要用这个框架,请往下看即可。如果需要深入了解这个框架是如何一步一步实现的,从接到需求,到每
  • 在拥有大量并发用户的系统中,热key一直以来都是一个不可避免的问题。或许是突然某些商品成了爆款,或许是海量用户突然涌入某个店铺,或许是秒杀时瞬间大量开启的爬虫用户,这些突发的无法预先感知的热key都是系统潜在的巨大风险。风险是什么呢?主要是数据层,其次是服务层。热key对数据层的冲击显而易见,譬如数
  • seo优化分为seo站内优化和seo站外优化,本文就seo的站内优化提出一些建议。一般来说站内优化主要的地方有:三个标签(title、keywords、discription),即网站的标题、关键字和描述,要优化的关键词这三个标签中有没有合理的分步是seo站内优化的最重要一点。三个导航(主导航、次导
  • 推荐在闲鱼的应用不同于搜索的确定性,推荐场景面临的问题往往是不确定的。但是正是因为这种不确定,带来了非常大的可能。所以推荐在闲鱼基本上遍地开花的状态尽管如此,推荐在闲鱼仍然面临着非常大的挑战,而这些挑战和闲鱼C2C市场的定位和特性密切相关。总的来说,闲鱼有四个比较明显的C2C特性:浅库存。闲鱼的商品
  • 1.前言随着QQ会员用户的日益增涨,每周都要上线大量各种玩法的H5活动来满足产品和运营的需求。大概在2014年,那时手游非常火爆,我们部门有一个游戏特权小组(大概10多个人),就是专门每天开发这种游戏相关的H5活动的。上线一个活动,从需求评审到设计重构,再到开发,到测试,最后上线。整个流程下来,大概
学习大纲