钉钉 6.0 发布会上提到的 Low-Code 是个什么鬼?

2021 年 1 月 14 日钉钉 6.0 发布会上提到了“云钉一体”战略,其中讲解了 「Low-Code」 这个词。不知道大家看到这个词是啥感觉?这是说我写的代码 low 吗?

阿里似乎比较喜欢带节奏,比如中台,不管大小公司都模仿;前段时间看网上有说他们去中台。。。心好累!

Low-Code 这玩意竟然很早就有了,很多人不知晓,多半是因为一直不温不火!不知道大家是否知晓,反正我之前是不知道,是这两天才看的很多资料。所以,这是一篇概念普及性的文章。

01 low-code 是什么?

low-code 一般翻译为低代码,表示的是用很少甚至不用代码就能开发软件。看一张图:

35 岁,不懂代码,2小时能开发出「疫情防控应用」,最喜欢的语言不是 PHP,而是「拖拉拽」。。。

Low-Code 是什么,大家应该有一个初步的概念了。维基百科是这么描述的(关于 low-code development platform):

A low-code development platform (LCDP) provides a development environment used to create application software through graphical user interfaces and configuration instead of traditional hand-coded computer programming。

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

所以,钉钉就是要打造一个这样的平台。

Low-Code 这个词最早是 Forrester 在 2014 年提出来的。

02 能做什么?

在参考文献「1」中,阿里内部目前很看好它,认为这是一场革命。它把普通的编程比作文章,把低代码比作视频,视频越来越受欢迎,虽然文章依然有其存在市场,但视频已成为大部分人获取信息的主要渠道。

说起拖拽编程,很多人可能会不屑:想想 Dreamware、Visual Basic 等,提供了强大的拖拽,但实际上大家很少用拖拽。不过低代码跟之前的还是不太一样,它可以给非程序员使用。

计算机领域有一句至理名言:任何问题都可以通过增加一个间接的中间层来解决。低代码的思路亦是如此:与当年的操作系统和现在的云平台一样,都是想通过建立一个黑盒化的中间层抽象来降低开发者的工作量与心智负担。

具体来说,低代码适用于哪些场景?

  • 自动化表单系统。低代码平台提供基础组件,企业可以基于此,通过拖拽的方式创建自己的表单系统,比如常见的 OA 的各种表单、审批。基本上表单收集信息、展示这类型的应用都可以通过低代码(甚至无代码)实现。
  • 低代码开发 Saas 系统。
  • 低代码开发 Pass 系统。

03 展望

除了这次钉钉的高调发布会,腾讯云也有低代码系统,他们总体的思路都是“云端一体”,解决了云,还希望解决本地“端”的问题。

虽然技术都有成熟度曲线,但不同的技术,成熟度曲线的跨度等是不一样的。Saas、Pass、Faas、Serverless 等一堆技术,它们都有一定程度的应用,但没有银弹,没有那种技术是一统江湖的。像微服务、中台不是银弹一样,鼓吹低代码是新一代技术革命,我觉得有点过了。

总的来看,我觉得低代码比较适合的场景还是偏向服务企业,开发企业内部的应用。实话说,这部分的系统,也是很多程序员不愿意开发的。但这部分又是企业数字化很重要的部分,因此低代码还是能发挥很大的作用,特别是对于传统企业数字化转型更是如此。

而且,我认为低代码开发平台属于大企业会做的事情(有一些创业公司可能会做这个方向),他们服务中小企业,说白了是一个 2B 的生意,大量 2C 的公司以及大厂们,要么用不上低代码,要么自己搭建一套这样的系统。同时,这些低代码平台会吸引更多的开发者参与进来,开发基础组件,打造生态。所以,低代码咋一看,似乎要革程序员的命,实际上程序员们呵呵一笑~

你怎么看?欢迎留言交流!

参考资料

  • 「1」:https://www.cnblogs.com/aliyun-emas/p/14004815.html
  • 「2」:https://www.zhihu.com/question/439292804
  • 「3」:https://en.wikipedia.org/wiki/Low-code_development_platform