低代码–低代码开发(LCDP)介绍

低代码开发(LCDP)介绍

  • 1 介绍
    • 1.1 概述
    • 1.2 行业风向
    • 1.3 行业报告
    • 1.4 优点
      • 减少重复编程
      • 避免沟通隔阂
      • 提升效率
    • 1.5 挑战
      • 完全抛弃代码的代价,就是平台能力与灵活性受限
      • 应用低代码平台阻力大
      • 技术局限
      • 老旧系统改造困难
      • 职业角色缺失
      • 应用者大多是技术人员
      • 有些行业抵触低代码
    • 1.6 技术特点
    • 1.7 低代码平台分类(from汪源,网易副总裁)
      • 模型驱动
      • 可视化开发
      • 表达式语言
      • 软件工程
      • 开放集成
      • 脚本语言
    • 1.8 低代码平台设计难点
      • 技术体系复杂
      • 需要应对架构与技术的快速迭代
  • 2 发展历史
    • 2.1 时间轴
    • 2.2 事件轴
      • Delphi、PowerBuilder(后称 PB)
      • 2015年微软、谷歌等巨头入局。
      • 2015-2018年期间,国内低代码厂商像简道云、氚云等也斩露头角
      • 18年,OutSystems融资3.6亿美元,西门子宣布6亿欧元收购Mendix
      • 2018年起,互联网巨头阿里、腾讯、百度纷纷入局
      • 2019年起,低代码成为我国ICT产业中最明显的增量市场
      • 2021钉钉6.0发布会再次引燃低代码市场
  • 3 代表平台
    • 3.1 巨头
    • 3.2 垂直领域厂商
  • 4 各赛道代表
    • 4.1 应用开发平台
    • 4.2 智能表格
    • 4.3 SaaS聚合
    • 4.4 IDE+DevOps
    • 4.5 DSL开发框架
    • 4.6 组件代码库
  • 5 应用
    • 5.1 ERP
    • 5.2 教育
    • 5.3 机器人
    • 5.4 工业PLC
    • 5.5 物联网
  • 参考

1 介绍

1.1 概述

  • 低代码开发平台(LCDP)是无需编码(0代码)或通过少量代码就可以快速生成应用程序的开发平台。通过可视化进行应用程序开发的方法(参考可视编程语言),使具有不同经验水平的开发人员可以通过图形化的用户界面,使用拖拽组件和模型驱动的逻辑来创建网页和移动应用程序。低代码开发平台(LCDP)的正式名称直到2014年6月才正式确定,整个低代码开发领域却可以追溯到更早前第四代编程语言和快速应用开发工具。
  • LCDP是Low-Code Development Platform的简写。
  • 低代码开发平台可以通过图形化拖拽、参数配置等更高效的方式完成开发工作。
  • 低代码背后的哲学,是少即是多(Less is More),或者更准确说是多快好省(Do More with Less)。
  • 低代码能解决落后的软件开发生产力跟不上人民日益增长的业务需求的矛盾。尤其面对非标需求。
  • 根据《人月神话》作者Fred Brooks的划分,软件开发的复杂度可以划分为本质复杂度(Essential complexity )和偶然复杂度(Accidental complexity)。前者是解决问题时固有的最小复杂度,跟你用什么样的工具、经验是否丰富、架构好不好等都无关,而后者就是除此之外在实际开发过程中引入的复杂度。通常来说,本质复杂度与业务要解决的特定问题域强相关,因此这里我把它称为更好理解的“业务复杂度”;这部分复杂度不是任何开发方法或工具能解决的,包括低代码。而偶然复杂度一般与开发阶段的技术细节强相关,因此我也相应把它称为“技术复杂度”;而这一部分复杂度,恰好就是低代码所擅长且适合解决的。
    低代码--低代码开发(LCDP)介绍
    低代码--低代码开发(LCDP)介绍
    低代码--低代码开发(LCDP)介绍

    1.4 优点

    减少重复编程

    将重复的部分抽出做出单独的功能,可以图形化拖拽等,极大减少重复性代码开发。

    避免沟通隔阂

    甲方提出一大堆业务流程、数据收录、界面设计等要求,开发者理解业务需求代价很高,并容易埋下不少系统逻辑不自洽、出bug、流程不通等隐患。借助低代码带来的简易操作,图形显示,业务员和甲方能轻松沟通。

    • 如PLC快速修改逻辑,让客户很快看懂自己的想法实现的轮廓。
    • 如协助机械臂的图形编程能方便业务和应用人员给客户展示产品的应用。
    • 如家装3D软件快速搭建家装效果。
    • 如剪映快速拼接视频让视频制作随手完成。

    提升效率

    可视化、交互化、简洁的平台界面,应用开发者能更高效地实施开发,能快速排查及修复bug。
    如协作机器人的图形化编程,能仿真同步,快速校验逻辑。

    1.5 挑战

    完全抛弃代码的代价,就是平台能力与灵活性受限

    一方面,可视化编辑器的表达能力远不及图灵完备的通用编程语言,不引入代码根本没法实现灵活的定制与扩展(当然,理论上也可以做成Scrach/Blockly那样的图形编程语言,但那样不过是换一种形式在手写代码而已)。
    另一方面,由于目标受众是非专业开发人员,平台能支持的操作会更趋于“傻瓜化”,同时也只会透出相对“亲民化”的模型和概念,无法支撑强大专业的底层开发原语和编程理念

    应用低代码平台阻力大

    低代码通过一站式解决方案,提升效率、降低使用门槛,但同时,一站式应用发布会对一些企业传统DevOps流程及规范形成挑战。引入低代码甚至会改变一些企业的现有工作流,对于大型企业阻力可能会较大。

    技术局限

    当前的低代码平台产品形态多是以Web端产品为主,技术上受限于浏览器性能,交互上需要妥协于浏览器技术,增加了向用户屏蔽技术细节的难度。

    老旧系统改造困难

    低代码平台的优势是作为业务创新的起点,到应用全生命周期的托管,而对于一些技术栈老旧、设计思维老旧、经过多年迭代的存量系统的升级迭代问题显得有些力不从心。

    职业角色缺失

    低代码将会孵化出一个行业中的全新角色——“业务信息官BIO”,立足于业务,有较高的抽象思维能力,能够将业务场景工具化。

    应用者大多是技术人员

    据Creatio调查统计,“只有 6%的低代码开发是由业务人员完成的”,而 OutSystems 的数据是 69%的用户是专业开发,宜创科技 CEO 宜博也曾说低代码面临“懂技术的看不上,懂业务的学不会”的尴尬。
    以机械臂中图形编程功能的使用情况来看,业务人员一般不会,还得由技术型应用人员来完成,技术型应用人员能力稍微强些会出现转行成真正的技术开发者的现场,我之前工作中就有遇到。

    有些行业抵触低代码

    大部分企业对 CRM、ERP 的定制需求还没那么高,相比用低代码从头开发来说,采用 Saleforce、SAP 这样的套装软件实施,再做一些二次开发是更合适的选择。这也解释了为什么 Saleforce、ServiceNow 这样的 SaaS 巨头都有自己的低代码平台,而西门子会收购 Mendix。另外 ERP 这样的企业软件实施强依赖咨询经验,这不是低代码能解决的,而业界有经验的咨询顾问显然更熟悉 SAP 这样的产品,也没有意愿改变。

    1.6 技术特点

    低代码产品大体分为两个大的发展方向:针对IT人员的开发工具型、针对业务人员的业务复用型。

    低代码--低代码开发(LCDP)介绍
    表单驱动模式的低代码平台主要以表单的形式运转业务流程;而aPaaS模式能借助应用平台打造一个立体空间,让不同部门的不同业务线彼此交叉贯通,还可以对接外部的系统。
    低代码--低代码开发(LCDP)介绍

    1.7 低代码平台分类(from汪源,网易副总裁)

    以区分度最高的六项来做判断标准:模型驱动、可视化开发、表达式语言、软件工程、开放集成和脚本语言。

    模型驱动

    使用模型驱动的平台比如 OutSystems、Mendix 的手册会有很大一章讲怎么做数据建模和处理,包括怎么定义实体、实体间关系、主键、唯一性、索引、数据怎么访问、筛选、分组、统计等等,还提供 SQL 或类似扩展。使用表单驱动的产品则往往手册第一章就是说明怎么定义各种表单,都是各种和界面相关的控件,比如单选多选下拉框、文本日期数字等。

    低代码--低代码开发(LCDP)介绍

    可视化开发

    可视化开发不是拖拉拽做个界面(这只能叫可视化设计),而是要拖拉拽写处理逻辑。看 OutSystems 这类产品的文档,你会发现很多编程语言的基本构造都有,比如顺序 / 分支 / 循环 / continue / break、输入输出参数、局部变量 / 全局变量、struct 和 list、异常等。虽然这些东西都是拖拉拽完成,看上去没有密密麻麻的一行行代码来吓人,但也足以吓退业务人员。一下几张图都来自于 OutSystems。

    低代码--低代码开发(LCDP)介绍

    表达式语言

    表达式语言有些类似 Excel 里的公式,有表达式语言才可以做一些比较复杂的计算。下图是 OutSystems 的表达式编辑器,大家可以看到有各种操作符,还有很多内置函数,比如数学函数、字符串处理函数等。

    低代码--低代码开发(LCDP)介绍

    开放集成

    典型的企业软件都是相互依赖和集成的,所以平台还需要具备能够调用外部 API 和开放 API 给别人的能力。

    脚本语言

    脚本语言就是用 JavaScripts、Python、Java、Lua等做扩展,有的甚至,这些是专业编程语言,但低代码平台会把工程复杂性都封装好,让开发者不需要配置部署环境,随手就可以写代码,写完一键发布马上可以运行。

    1.8 低代码平台设计难点

    技术体系复杂

    涉及核心的编程语言层面的设计,比如 DSL、类型系统、泛型等等,还有怎么 diff、debug、undo。

    需要应对架构与技术的快速迭代

    20 年前是 C / S、.Net,后来流行 B / S、Java,再后来又得搞 App,操作系统从 Windows 变成 Linux,现在又面临从 SOA 到微服务的转型。
    如 OutSystems 到 2016 年的 10.0 版本一口气推出 Client-Side Logic、Local Storage、异步、Reactive 等功能才算对移动 App 有较好的支持。网易的轻舟团队在做这些东西时发现很难。

    2 发展历史

    2.1 时间轴

    • 80年代,编程界推出了“结构化语言”,即以功能指令为单位,把相应的代码封装好。当程序员要系统运行某个功能时,只需发出指令,计算机就知道要运行对应的代码。
    • 2000年,“VPL”(可视化编程语言)出现了。就是在第四代编程语言的基础上,把系统运行的过程以更视觉化方式呈现,例如图标、表格、图表等形态。
    • 2010-2015年,传统软件和SaaS软件兴起,市场规模稳步增长。许多软件开发项目,软件的功能大同小异,重复度很高,导致很大部分的软件开发成本都浪费在重复的功能编程上。
    • 2014年,Forrester(一家国际知名的技术和市场调研公司)敏锐地发现软件重复性开发的问题,并首次提出低代码和零代码的概念。
    • 2016年,宜搭、iVX等一众创新团队开始从“非代码”或“低代码”的产品方向探索应用开发新模式,开启中国低代码赛道。
    • 2018年,Gartner提出aPaaS(应用平台即服务)和iPaaS(集成平台即服务)的概念。
    • 2021年,中国市场逐渐形成完整的低代码、无代码生态体系。
      低代码--低代码开发(LCDP)介绍
      低代码--低代码开发(LCDP)介绍
      低代码--低代码开发(LCDP)介绍

      作为钉钉生态产品提供大量行业标准的应用模板,例如:CRM、财务管理、日常信息收集等,业务人员可以直接发布到自己的钉钉工作台快速投产;由于这些应用模板本事是基于丰富的标准化前端组件,业务人员经过简单文档学习,通过宜搭提供的可视化拖拉拽工具可以完成一定程度的业务定制。

      4.2 智能表格

      有维格表、Treelab、轻流等

      低代码--低代码开发(LCDP)介绍

      Odoo:CRM、ERP领域的SaaS起家,在海外市场风靡一时。Odoo瞄准的是应用级的开箱即用,依托于多年的SaaS交付和生态社区发展,Odoo积累了一大批围绕企业管理场景的SaaS应用。在应用市场中,用户可以选择所需的管理软件,如财务、库存、人事、设备管理、园区巡检等,直接添加到自己的工作台。相比于购买不同厂家saas产品,企业获得了统一的工作台、数据接口、底层协议,无论是自己依照odoo开源框架还是增加其他应用都有很好的拓展性。

      4.4 IDE+DevOps

      有Mendix、AppCube、iVX等

      低代码--低代码开发(LCDP)介绍

      Uni-app: 是DCloud一个基于Vue封装的前端开发框架,可以达到一次编码,多端适配。

      4.6 组件代码库

      BrickNext、Vant、ICE等

      BrickNext:优维科技旗下低代码开发工具,提供超过300个前端组件库,只需要配置yaml文件即可完成前端搭建。不同于element这类的开源前端组件,BrickNext基于前端原生开发方式,可以提供原子级的自定义能力,同时相较于element的通用型前端组件,BrickNext同时提供优维多年交付积累下来的业务前端组件。支持原子级修改是该产品的最大优势,但同时也是最大的问题,目前前端行业普遍采用Vue或React开发框架+element或其他前端组件的方式进行开发,基于原生的开发方式越来越少。

      5 应用

      5.1 ERP

      Odoo,OpenERP

      5.2 教育

      • Scratch (全球少儿图形化编程工具(语言))
      • Google的Blockly

      5.3 机器人

      • 协助机器人采用图形编程,如优傲、节卡。
      • AMR机器人采用图形编程,如海康、玖物互通。

      5.4 工业PLC

      2018年西门子以6亿欧元收购低代码开发平台公司Mendix

      5.5 物联网

      参考

      1、有人说低代码是:几个牛的人让一群人失业,真是这样br> 2、低代码发展现状调研和思考
      3、低代码开发平台都有哪些内外十几大低代码开发平台——汇总分析
      4、简述国内几大无代码开发平台
      5、2021盘点:国内外10大低代码开发平台
      6、18个最受欢迎的低代码开发平台【开源】
      7、低代码的行业现状如何,又将走向何方br> 8、机器人流程自动化(RPA)与低代码流程自动化:应用场景与优势
      9、“行业毒瘤”低代码
      10、什么是低代码(Low-Code)br> 11、万字长文讲透低代码–汪源(网易副总裁)
      12、一文看懂低代码的现状、打法、机会和挑战
      13、终于有人把“低代码”说清楚了!
      14、百科–低代码开发平台
      15、功能模块化,逻辑图形化
      16、图形化编程的理解
      17、低代码都快烂大街了,还有人在为低代码吵架
      18、低代码无代码平台——新的投资赛道
      19、硅谷成长攻略–低代码、无代码之上手体验:道阻且长,行则将至

      来源:worthsen

      声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年2月20日
下一篇 2022年2月20日

相关推荐