一文讲透低代码

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

01 了解低代码开发平台

低代码的定义与发展


在这里插入图片描述

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

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

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

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

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

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

经过多年的发展,超百家厂商推出了大量的低代码开发平台产品。纵观这些低代码平台,除了都具有这些基本要素以外,没有两个产品是完全相同的。有些工具作用非常有限,更类似于与数据库配套的前端界面,如20世纪90年代的FoxPro;有些工具则仅专注于小众的业务需求,如客户档案管理;甚至有一些专用工具只是用低代码的术语来描述,但与实际的应用程序开发几乎没有关系。为了与其他软件开发技术进行区分,避免对IT决策者带来误导,Gartner将低代码的概念具体化,提出了低代码开发应用范围(构建包含有用户界面、业务逻辑、工作流和数据服务的完整软件应用)。针对企业级软件开发,Gartner还提出了低代码开发平台所需的必备功能。

  • Not be used only or mainly for building specific industry applications, and it must not be only a product bundled within some other solution or platform. 不能仅用于或主要应用构建特定行业的应用,不能仅限于在依赖其他解决方案或平台上运行。

  • Support development and deployment of applications by professional developers in both central IT and line of business — not just for citizen developers. 需要能提供给IT技术人员使用,不能只给平民开发者使用。

  • Develop, version, test, deploy, execute, administer, monitor and manage the applications and their relevant artifacts. 全生命周期:覆盖应用和相关资源的开发、版本管理、测试、部署、执行、管制、监控和管理的全生命周期。

  • Embed data storage features without relying on additional procured services (i.e., includes a database). 内建数据存储:内建数据存储机制,不能依赖其他的数据库等存储服务。

  • Support the design of data schema and application logic. 数据与逻辑设计:支持用来设计数据结构和应用逻辑。

  • Create rich application UIs (i.e., not only a forms builder or building an administration UI). 完整的界面设计:支持创建完整的应用界面,不能仅支持创建表单或管理界面。

  • Enable the invocation of external third-party services via APIs or event topics. 第三方集成:支持引入第三方API或事件驱动机制。

  • Support some automation of platform patching and versioning. 自动运维:提供自动化的应用升级和版本管理机制。

  • Provide single-step deployment across environments (development, test, staging, production). 多环境部署:支持针对多环境的一键部署,包括开发环境、测试环境、验证环境和生产环境。

  • Access a platform repository or marketplace for sharing components, modules, connectors and templates 社区共享:提供可供访问的应用市场,用来共享组件、模块、连接器和模板。

低代码的技术路线

在这里插入图片描述
在这里插入图片描述

在低代码的诞生和发展进程中,有两个典型的技术路线:

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

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

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

在这里插入图片描述

02 低代码开发者有哪些

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

从事低代码开发人员可以分成两类:服务于企业IT部门或软件的公司的IT技术人员(包含但不限于程序员、项目经理、实施顾问等);以及来自业务部门,本职工作与IT无关但参与到软件开发中的业务开发者。

低代码赋能IT技术人员

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

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

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

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

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

最适合转型为低代码开发的IT技术岗位

在进入低代码时代之前,各岗位的IT技术人员均已掌握了软件开发全生命周期所需的部分技术,通过简单的学习,这些IT技术人员均可转型为低代码开发者,以团队成员或个人开发者的身份构建软件应用。

在这里插入图片描述

●:低代码开发者的必备技能;○:低代码开发者的重要技能;△:部分场景下低代码开发者的需要技能

低代码与IT技术人员的职业发展

对于程序员来说,学习模型驱动的低代码开发平台和学习一项新的语言类似,都是将之前学习和实践中积累下来的经验,套用到新的开发工具上。在适应了低代码开发平台后,IT技术人员就能通过可视化的方式,大幅减少重复性的工作,比如增删改查、页面布局和样式等,最终实现工作量的显著下降。从相对低端的重复性工作中腾出精力,才能扩宽职业发展的道路。在一个采用低代码技术开发的团队中,IT技术人员的发展路径主要有以下4条。

技术专家

低代码时代的技术专家与编码开发的架构师类似。如果对传统编码开发更感兴趣,低代码开发者可以持续钻研编程扩展,包括低代码平台的插件开发、外挂式Web API开发、软硬件集成、数据库调优等,为公司提供技术支撑。成为技术专家,意味着开发工作从面向应用需求,切换为专注于处理技术和集成方面的难题,为多个团队和项目提供技术保障。相比于没有接触过低代码开发平台的其他程序员,技术专家通常可以根据低代码平台的特点给出最有效的解决方案,并且能够充分理解和照顾来自公司其他开发者的功能和体验要求,降低沟通成本,为整个公司的软件开发工作提效。

大多数采用低代码开发模式的软件公司和企业信息化部门对技术专家岗位的需求量较少。所以,这个路线对开发者自身的技术突破能力和持续学习能力有较强的要求。通常情况下,公司会优先从编码开发团队的架构师中选择学习能力强、对新技术敏感度高的人员担任技术专家。

项目经理

低代码开发和编码开发在项目管理和软件生命周期上的方法论是一样的。所以,低代码开发团队一样需要设置项目经理的角色。考虑到低代码时代有“设计即开发”的特点,项目经理也需要具备使用低代码平台构建可操作原型,甚至参与到具体开发工作的能力,这就为低代码开发者转型成为项目经理提供了更有竞争力的条件。

相比于编码开发,数倍的生产力优势让低代码开发的团队规模更小,2-3人的微型团队就能具备编码开发时代10人团队才有的软件交付能力。更小的团队规模,让公司能同时启动更多的软件开发项目,这就需要更多的项目经理来保证需求沟通和开发管理的有效可控。所以,除了编码开发团队的项目经理之外,更多的开发者可以借助这一契机,通过承担更多项目管理工作,成为新的项目经理。需要提示的是,项目经理所需的管理知识已经形成了成熟的体系,“自学成才”是完全可行的。

业务专家

低代码具备更快的迭代速度和更低的学习门槛,这使得很多公司开始让业务人员深入参与到软件开发中来。业务人员和IT技术人员一起,前者贡献业务知识,而后者基于对计算机技术的理解,将其转换为软件。在不断的交流中,有一部分业务人员因此掌握了软件开发能力,也让一些技术人员对业务流程和背后的原理有了更深刻的理解。所以,在帮助业务人员转型为开发者的同时,技术人员也能成为业务专家,将软件开发工作中培养的系统化、逻辑化思维带到业务部门,为业务发展引入新动力。

独立开发者

低代码开发的团队规模更小,一人身兼数职也是常态,可以帮助开发者更快速地成长。在低代码的助力下,一个人同时掌握需求分析、产品设计、开发、测试以及DevOps相关的技术能力的可能性大增。如果具备覆盖软件全生命周期的能力,再加上合适的时机,“成为独立开发者”也是一个值得考虑的选项。相比于编码开发,低代码的开发效率足够帮助独立开发者建立起交付速度和成本上的优势。

低代码赋能业务人员

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

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

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

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

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

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

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

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

在这里插入图片描述

03 低代码的应用价值

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

在这里插入图片描述

04 低代码发展现状

随着互联网资本的介入,中国的低代码产业于2019年进入高速发展阶段。目前,近百家低代码厂商推出了不同类型的低代码平台产品,形成了4大商业模式,3种渠道模型。不论是企业信息化部门还是软件公司都能从中找到与自身诉求和状况相匹配的解决方案。

在这里插入图片描述

艾瑞咨询《2021年低代码行业研究报告》

在这里插入图片描述

亿欧智库《2021中国低代码市场研究报告》

在这里插入图片描述

T研究《2020中国低代码平台指数测评报告》

在这里插入图片描述

海比研究《2021年中国低代码无代码市场研究报告》

05 低代码开发实战图书推荐

限时优惠,点击此处可查看详情

在这里插入图片描述

▊《低代码开发实战——基于低代码平台构建企业级应用》

葡萄城公司 著

  • 国内低代码领军者葡萄城公司专业技术团队力作

  • 涵盖16个大知识点,100多分钟视频讲解,赠送低代码企业级开发平台

低代码开发平台是不写或者只写极少量代码即可实现业务功能的软件平台,可以助力企业快速完成数字化转型。

本书循序渐进地讲述了数据库设计、UI设计、业务逻辑处理、报表、权限等技术。本书共8章,以当下使用者*多的企业级低代码产品活字格为例,内容包括概述、数据库设计、客户端页面设计实战、服务端逻辑设计实战、报表设计实战、配置权限、编码扩展与系统集成实战、低代码应用的部署。

本文内容由国内低代码领军者葡萄城公司提供。

内容来源:http://lowcode.grapecity.com.cn/

### 回答1: ESD(Electrostatic Discharge,静电放电)是一种瞬时放电现象,通常是由人体或设备上积累的静电电荷引起的。一般来说,ESD会导致电子设备损坏或误操作,因此必须采取措施来避免ESD。 在设计中,ESD保护应该开始于PCB的物理设计。一个好的物理设计将使ESD泄放的能量尽可能地均匀地分散到整个电路板上。这种物理设计包括有效的接地,涂覆和排列PCB层。同时,这也需要考虑到整个系统的电缆结构、机箱接地和隔离等因素,从而最大限度地提高整个系统的耐ESD能力。 此外,在设计电路时,还需要考虑到ESD保护措施。主要的保护措施包括使用可靠的ESD保护器件,如TVS器件、瞬变压抑器和热释电器件,以保护线路免受ESD的影响。此外,在设计输入、输出和供电接口时,还应该采用合适的线路过滤器和电容器,以进一步提高系统的ESD耐受性。 最后,测试是ESD保护设计的重要环节。ESD测试可以验证保护设计的有效性,并排除措施上的缺陷。通常,测试人员会使用标准ESD模拟器来模拟真实的ESD事件。在测试过程中,应注意对设备进行预处理,如去静电和适当的人体模拟。此外,还应该制定合适的检验标准以确保测试的准确性和可重复性。 总之,ESD保护设计至关重要,因为它能够保护电子设备免受静电放电的损害。为了实现可靠的ESD保护,这需要考虑物理设计和电路设计,以及有效的测试工具。最后,只有将所有这些因素合理结合,才能实现有效的ESD保护设计。 ### 回答2: ESD(Electrostatic Discharge,静电放电)指的是在两个带有不同电荷的物体接触或者靠近时,电荷之间发生放电的现象。这种放电可以对各种电子元器件和电路造成损害,从而影响设备的性能和寿命。 ESD的原理可以通过三种方式传递:空气中的放电、直接接触和电感耦合。在实际应用中,ESD对硅芯片、存储器、晶体管等电子元件的损害是非常严重的,这些元件的特性和结构容易受到ESD的影响。 为了防止ESD对电子元件和电路的损坏,需要在设计中采用一些专门的技术,比如在元器件和电路板上增加ESD保护电路、在设备外壳上增加处理工艺等。对于集成电路芯片而言,可以采用对基底和指的进行控制,以及在芯片电路设计过程中合理选择元器件和适当布局等。 总之,ESD保护是电子元器件和电路设计中非常重要的一环,需要采用针对性的技术来减缓和防止ESD对设备的影响,从而保证设备的长期稳定性和可靠性。 ### 回答3: ESD全程为静电放电,是由于静电在两者之间产生的高电压放电引起的电感和电容的相互作用。在现代电子系统中,由于设备的电路越来越小,因此更容易受到静电干扰,人们不得不在设计中考虑如何避免或降低这种静电干扰。本文将从ESD的原理出发,简要介绍如何在电路设计中考虑防止ESD干扰。 ESD的产生是由于静电的积累导致的高电压放电,因此防止ESD干扰的基本原则是减小静电的积累。在电路设计中,静电主要通过两个方面来进行干扰:一是直接放电干扰,即静电直接放电到电路中,导致电路损坏;二是间接放电干扰,即静电放电到设备的金属外壳等部位,导致电磁场干扰影响电路的正常工作。因此,在设计中,需要采用一些措施来减小这些干扰。 1. 选择合适的元器件:在元器件的选择上,要选择一些抗ESD干扰的元器件,如采用ESD保护二极管等,能够减小ESD对电路的影响。 2. 优化电路结构:在电路设计中,要优化电路结构,减少电路间的交叉干扰,避免电路产生高电位差,这样能够减少静电的积累和ESD的辐射。 3. 采用ESD保护电路:在设计电路时,引入一些ESD保护电路,能够有效地减小ESD对电路的影响。例如采用Zener二极管、TVS二极管等保护电路。 在总体设计中,需要综合以上措施,采用一些适合的方案来消除ESD对电路的干扰。同时,在实际使用中,也需要对电路进行定期维护和检测,保证电路的正常运行。在电子技术的快速发展中,ESD防护的问题只会越来越重要,只有对其进行深入的研究和应用,才能更好地保证电子设备的稳定运行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值