Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Low-Code低代码应该怎么玩儿?

Low-Code低代码应该怎么玩儿?

作者头像
否子戈
发布于 2021-04-08 12:05:28
发布于 2021-04-08 12:05:28
1.8K0
举报
文章被收录于专栏:
概念

Low-Code是由Forrester(一家全球市场研究公司)在2014年提出的(全称LCAP, Low-Code Application Platform)。

虽然市面上定义各种各样,但是Low-Code的本质核心价值在于:

形式上,Low-Code表现为,事先通过工具生成部分代码,然后开发者需要在这份代码基础上再继续开发。现在在wikipedia上的词条叫做LCDP(Low-Code Development Platform,低代码开发平台)。

  • 低代码开发平台(LCDP)本身也是一种软件,它为开发者提供了一个创建应用软件的开发环境。看到“开发环境”几个字是不是很亲切?对于程序员而言,低代码开发平台的性质与IDEA、VS等代码IDE集成开发环境)几乎一样,都是服务于开发者的生产力工具。
  • 与传统代码IDE不同的是,低代码开发平台提供的是更高维和易用的可视化IDE。大多数情况下,开发者并不需要使用传统的手写代码方式进行编程,而是可以通过图形化拖拽、参数配置等更高效的方式完成开发工作。

另外一家国际知名调研机构Gartner在2012年就提出了Citizen Developer(人人都是开发者)的概念。这个词大意是:借助于一些组件化、可视化平台,一些不具备编程技能、不懂代码和开发的“小白”,也能自主组织或参与开发,从而把代码开发由一项程序员专属技能扩展到更广泛的人群,甚至是全人类。在低代码语境下,Citizen Developer使用低代码平台生成符合他们意图的半成品代码,然后交由专业的开发者,完成剩余的能够真正部署到生产环境的产品。

Gartner是一个非常有趣的机构,它很喜欢制造新概念(新名词),但是不凑巧,自己提出的概念,最后被Forrestter用Low-Code抢了风头,于是他决定必须扳回一局,开始想新名词,在2017年发明了HpaPaaS(High-productivity application Platform as a Service)这个概念,但是实际上就是跟Low-Code是一回事,反而由于概念太过专业(和SaaS, PaaS概念混在一起),没有流行开,而Low-Code这个词看上去比较low(土),却成为当前该领域的术语。

但是Gartner更早提出的aPaaS这个概念确实火了。aPaaS是介于PaaS和SaaS之间的一种服务模式,主要有两个特征:

  • 提供快速开发的环境,用户在几个小时内就能完成应用的开发、测试、部署,并能够随时调整或更新。
  • 低代码或零代码,非技术人员就能完成应用开发

而这里的零代码,也就是No-Code,则是和Low-Code相对的一个概念。Low-Code还有中间的半成品代码,还需要专业开发者完成后续开发工作,而No-Code则是完全由Citizen Developer完成开发,直接测试部署,不需要专业开发者参与。aPaaS平台,国外发展比较快的厂商有:Redmine,Jira,Odoo,Smartsheet, Airtable和Zoho Creator,中国市场有简道云、明道云、氚云和伙伴云等厂商。它们的产品形态,基本上就是企业主上它们的在线平台,通过填写、拖拽等形式,完成一个业务及其流程的设计,然后发布,获得对应业务的链接,再发送给自己的员工或客户,让员工或客户在这个链接对应的应用中完成相应的操作。

从商业价值来看,aPaaS已经证明了自己的价值,而低代码平台至今仍然是概念火,但赚钱能力存疑。

国内外Low-Code/No-Code列举

Mendix-被西门子用6亿欧元收购的新独角兽,低代码开发平台。

Outsystems-独角兽公司,国外知名的drag drop IDE。

Odoo-准备进军中国的低代码编程工具。

PowerApps:微软旗下

AppMaker: 谷歌旗下

牛刀:可以搭小程序等

搭搭云

APICloud

iVX-国内的可视化编程工具代表。

宜搭:阿里云钉钉旗下。

活字格

简道云:含自定义表单、自定义报表、自定义流程引擎、消息提醒等模块

轻流

飞冰

Gin-Vue-Admin

Low-Code技术解析

首先,区分场景

  • 在线设计应用,发布后获得一个url,用户访问这个url完成业务,例如问卷、H5活动页
  • 在线对应用的界面、流程、逻辑进行设计(编排),导出api接口,应用根据接口描述自己决定怎么渲染和创建运行时

第一种场景适合功能单一的即时性应用。

第二种场景适合功能复杂的业务系统。

方案一

用户在平台对界面和数据进行编排,点击发布,平台立即生成数据库表、接口、静态文件,并完成打包,发布到云服务和CDN。使用时直接访问html文件。

方案二

用户在平台对界面和数据进行编排,点击发布,平台立即生成数据库表、接口、半成品代码,之后由专业开发者完成剩余代码开发,并按主流构建发布逻辑完成发布。

方案三

用户在平台对界面和数据进行编排,点击发布,平台立即生成数据库表、接口、布局配置(文件或存表)。运行时,由后端根据配置文件或配置表动态渲染页面。

方案四

用户在平台对界面和数据进行编排,点击发布,平台立即生成数据库表、接口、布局描述DSL。运行时,前端通过API接口读取DSL,并进行解析,完成渲染,并按DSL中提供的信息提交数据。

其次,技术要点

1. 可视化拖拽

参考《可视化拖拽组件库一些技术要点原理分析》

2. 数据表

例如问卷,创建一份问卷之后,除了问卷作为一个表单的交互层面的东西,还要有用来保存该表单提交的所有记录的数据库表,以及用于接收提交的API接口。

3. 代码生成

参考Gin-Vue-Admin

4. 生成静态文件

基于SSR的思路,直接生成html。

或者不直接生成HTML,而是利用webpack进行打包。

5. 配置

从可视化拖拽/填写->配置文件/表->渲染。

生成配置过程比较麻烦,苦力活,需要根据设定好的协议,例如比较火的JSON Schema,生成配置。

从配置到渲染过程就相对简单,读取配置,根据定好的规则,选择使用不同的组件和配置的逻辑进行渲染。

6. DSL

过程和5配置一样,从可视化拖拽/填写->DSL->渲染。只是更加抽象化,通过自己发明的一套特殊语法来完成对功能的描述。

由于DSL是一种编程的语言,所以,目标是简单,因此,对于使用者而言,可以不需要可视化拖拽界面,而是直接写DSL即可,例如腾讯问卷可以使用文本方式编辑和生成问卷,以及使用高级方式编辑问卷各个题目之间的逻辑关系。

用户可以在可视化编辑和DSL之间切换,根据自己喜好来使用。

7. 逻辑编排

类似Scratch、nodered

8. BPM流程引擎、表单引擎、布局引擎

需要投入大量时间和人力去研究和填坑。

Low-Code是否会让程序员失业?

会。看看搭搭云的介绍视频就知道对程序员的友好程度有多差,它里面明确传递给企业老板一个信息:不需要一个开发团队了,一两个程序员就搞定。

但是,你要看清楚场景。很多使用Low-Code平台的企业,要么是那种小企业,他们巴不得不需要程序员,对于程序员而言,也不是职业发展的可靠伙伴,不去也罢;要么是大企业中某些业务环节,例如明源云解决房地产领域的业务,这种不仅不会让程序员失业,更多的反而是帮助程序员节省时间和精力。

我需要自己搭一套Low-Code平台吗?

除非你的企业为其他企业提供类似aPaaS这样的服务或产品,否则千万不要为了自己的单一业务开发Low-Code平台,它说白了,是用一套成本非常高的技术,通过低价量大来实现回本,所以为了自己当前单一业务去开发平台,是吃力不讨好。但是并不是说你不能借用里面的一些技术点,例如基于拖拽生成的技术。

但是,如果你能够沉淀出类似飞冰这样的产品,那对于需要反复使用某些架构的新项目来说就是好事。简单说,就是,把你所接触的业务沉淀到一个低代码工具中,当有新产品需要该业务的逻辑时,马上拿出低代码工具,生成几乎所有必须的套件,然后才开始开发,那种感觉还是很爽的。

结语

抛开Low-Code这一概念,我们在业务开发中,有的时候也是需要基于某种协议做动态定义与渲染的,特别是某些比较特定的业务系统中,需求方总是希望自己可以通过在线修改,来快速完成需求调整,而非要通过该代码和发版。掌握这种抽象能力,对我们的开发能力提升,有非常大的帮助。至于Low-Code平台,目前除了aPaaS平台,类似问卷这样的纯表单应用,还有前两年在线生成H5请柬、贺卡等应用,也是有很大的空间,掌握Low-Code整套技术,对无论在企业内打工,还是自己创业,都有帮助。

Robust是一档以技术话题为核心的播客节目,你可以在喜马拉雅、网易云音乐、PodCast、小宇宙等APP上搜“Robust”找到节目进行搜听收藏。如果你对其中的某期节目感兴趣,可以通过下方的留言给我反馈。如果你喜欢这档节目,请不吝打赏,支持我继续做下去。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-03-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 唐霜 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
淘课之家 ~ 什么是低代码(Low-Code)?
虽然程序员真的不喜欢重复自己,但冗余也是一种必要的容错手段,好东西真的不容错过:欢迎各位技术同路人加入淘课之家原生应用研发平台EMAS团队,我们专注于广泛的云原生技术(Backend as a Service、Serverless、DevOps、低代码平台等),致力于为企业、开发者提供一站式的应用研发管理服务。微信公众号:淘课之家
淘课之家
2020/11/16
1.8K0
低代码架构及关键技术02:定义范围及生态
在前一小节,我们讲述了低代码的发展历史和趋势,可以看出低代码已经是一种必然趋势。市面上纵然有各种反对低代码的声音,低代码确实也不能被当做“万能的神”;但,也无法阻挡趋势的到来。我们能做的就是,顺势而为,努力去了解这个领域,能让低代码产生更大的实践价值。在本节,我们将确认低代码的定义、主要范围及生态。
低代码一哥
2022/07/08
8560
低代码架构及关键技术02:定义范围及生态
一文看懂“低代码,零代码,APAAS”是什么?怎么选?
零代码、低代码、apaas的概念在整个全球行业内已经流行了很长一段时间。那这3个概念分别指的是什么?他们具备何种能力?企业如果要用该如何选?下面织信低代码一文全部给你讲清楚!
informat低代码
2022/04/24
1.4K0
一文看懂“低代码,零代码,APAAS”是什么?怎么选?
史上最全盘点:一文告诉你低代码(Low-Code)是什么?为什么要用?
要说在后疫情时代,什么样的新技术能真正解放IT生产力,加速社会数字化转型?毫无疑问,我个人认为是低代码(Low-Code)+ 人工智能(AI)的组合。
informat低代码
2024/11/06
4260
史上最全盘点:一文告诉你低代码(Low-Code)是什么?为什么要用?
低代码平台:国内十大低代码开发平台排名
大家在谈到“低代码”的时候,可能想到更多的是低代码搭建应用/页面的平台,其实对于偏逻辑编排、服务 BaaS 能力的偏可视化方式其实也算低代码,旨在「通过少写代码,用更便捷的方式来实现原本需写代码的工作」。
informat低代码
2024/06/04
1.1K0
2024国内外低代码开发平台排名,二十大主流低代码开发平台
IT圈的风口总是一轮又一轮,但是只有当浪潮退去,还能幸存的,才能是真正具备社会价值的产品。把这个规则放在——“低代码”这个赛道上,也是一样。
informat低代码
2024/06/06
3K0
2024国内外低代码开发平台排名,二十大主流低代码开发平台
低代码(Low-Code)技术杂谈
“Low-Code”是什么?身为技术人员听到这种技术名词,咱们第一反应就是翻看维基百科 或者其他相关技术论文,咱们想看维基百科的英文介绍:
林淮川
2021/12/15
1.4K0
什么是低代码(Low-Code)?我们需要低代码吗?
什么是低代码(Low Code)?我们需要低代码吗?低代码是怎么火的?国内低代码平台哪家强?以及低代码的核心价值是什么?本文集合本人 6 年来的低代码实践经验和教训,将带领大家深入浅出的了解低代码的那些事儿,全文干货,2500+ 文字,建议收藏!
informat低代码
2024/10/15
2250
一文讲透:低代码平台是什么?低代码平台应该如何挑选?
低代码(英文名称:Low Code),该概念有很长一段自由发展期,期间缺乏完整定义,大家习惯根据自己的理解为新技术“添砖加瓦”,导致没有统一认知,竞争赛道模糊。
informat低代码
2025/05/26
1160
什么是低代码(Low-Code)?
现如今,我们已全面迈入智能互联网时代,新的技术不断迭代问世,也代表着新的生产力不断深入我们的生活,同时也是开创未来最好的原动力。那就眼下而言,什么样的新技术才能真正解放IT生产力,加速社会数字化转型呢?without doubt!我认为是低代码(Low-Code)。
informat低代码
2023/06/12
6230
什么是低代码(Low-Code)?
什么是低代码?哪些平台适合业务人员?用来开发系统靠不靠谱?
低代码(Low-Code),在正式场合出现,最早应该是在Forrest在2014年发布的研究报告上,意指:“无需编码或通过少量代码就可以快速生成应用程序的开发平台。这类平台面向的是IT专家或者普通业务人员,以快速交付应用程序为目的,解决传统软件开发模式带来的周期长、成本高等问题,客户群体主要为软件开发公司或者拥有IT专家的中大型企业。”
informat低代码
2022/07/28
1.2K0
LowCode 窥探
本文是笔者在团队内部做分享整理的资料的一部分,本次分享主要是站在一个服务端开发的视角对(前端)低代码平台的一些调研,已经剔除了一些敏感数据和信息,可放心食用。
出其东门
2022/12/05
4330
LowCode 窥探
低代码平台简介(10家国产化低代码平台详细介绍)
基于这样的优势,也让“低代码”在国内各个行业刮起了一场低代码风暴。还因此吸引了国内大厂纷纷加入,像腾讯、阿里、华为、网易、百度等科技巨头目前都已研发出了自己的低代码产品。并且还对该领域的其他产品进行了大量投资。就比如阿里,先是在2018年投资了一家低代码平台,而后又自己研发了低代码平台钉钉宜搭。
informat低代码
2023/05/26
2.6K0
2023年受人欢迎的低代码开发平台大盘点
随着企业对于降低成本和加快软件开发的需求增加,低代码开发平台逐渐成为一种受欢迎的选择。这些平台提供了拖放界面和预置组件,使得开发人员可以用更少的代码创建复杂的应用软件。低代码开发平台不仅有助于企业加速数字化转型,而且还能打破业务部门和IT部门之间的沟通障碍,让业务需求能够更快地得到实现。
informat低代码
2023/08/01
8360
[标准规范] 低代码的概念和定义到底是什么?无代码是否属于低代码?
低代码已经火了几年了,但业界对低代码的概念和定义还是有所争论,甚至模糊。如果低代码领域想要持续健康发展下去,那么,首先概念一定要明确;也不要再造新名字、新概念。在此想啰嗦一句,轻流公司在低代码无代码领域算优秀的公司了,但,请不要再造一个词“轻代码”!请问“轻代码与低代码区别是啥?”。如果是真心想让这个领域发展得好,请别再整各种近似词语了,别让这个领域显得混乱模糊。
低代码一哥
2022/07/22
7150
[标准规范] 低代码的概念和定义到底是什么?无代码是否属于低代码?
低代码平台揭秘
低代码开发平台(Low-code development platform)是今年热度很高的词,有人认为是“新瓶装老酒”,也有人认为是未来的发展趋势。过多的技术炒作导致部分人对技术名词有些排斥,也增加了我们判断发展趋势和伪概念的成本。我认为代码平台是有价值且有发展前景的。低代码平台的发展有利于互联网技术快速落地到各行各业,提高整个社会的生产和运作效率,它甚至有可能会引发一场互联网革命。
一行舟
2022/08/25
1.5K0
中国低代码开发平台的混战——一次说清楚低代码
这两年,无论是资本层面,还是企业IT部门的关注,“低代码”都是绝对的热点。互联网圈也似在一夜之间冒出了各种各样的低代码公司。到底什么是低代码?低代码是新技术么?低代码开发能给企业带来什么价值?企业如何使用低代码?哪些平台是真的低代码哪些是浑水摸鱼蹭热点?我们今天一次性说明白。
APICloud官方
2021/04/13
8500
中国低代码开发平台的混战——一次说清楚低代码
免费的低代码开发平台有哪些?
近年来,低代码行业逐渐成为了人们口中的“香馍馍”,尤其是在中、美地区,几乎每周都有一家低代码/无代码平台(No-Code)的公司融资。而根据Gartner的报告显示,低代码/无代码的市场,仅在去年(2021年)就增长了25%,分析软件市场也在一年内成长了20%。放眼国内市场,也是发展得如火如荼。
informat低代码
2022/07/25
12.2K1
免费的低代码开发平台有哪些?
LowCode:低代码平台,2024国内十大主流低代码平台年终盘点
尽管我这里解释了一大通,但是,之前听过低代码的企业可能只占 50%,更不用说去使用的,可能也只有很小比例的企业在用,更少的企业深度使用。
informat低代码
2024/11/14
9700
低代码平台定义 11 要素 ( Gartner )
Low-code application platforms (LCAPs) provide abstracted, guided development, automation and governance capabilities, enabling professional and citizen developers to rapidly develop digital solutions. Software engineering leaders should use this research to compare LCAPs.
一个会写诗的程序员
2022/06/02
1.5K0
低代码平台定义 11 要素 ( Gartner )
推荐阅读
相关推荐
淘课之家 ~ 什么是低代码(Low-Code)?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档