1 初识低代码
机缘巧合,2021年接触到了低代码,初见充满神秘,再见仍别具魅力。首先,低代码并非一个新的事物,但也并非新杯装陈酒。从历史来看,低代码并非横空出世;从应用发展来看,它任然稚幼。在行业内并没有低代码的一套统一的标准,整个行业还处于百家争鸣的时段,当然低代码作为aPaas/Saas(Software-as-a-Service)领域的某一点,很难产生统一的标准,实现不同厂商之间的平台互通。
目前,行业内已经涌现出不少商业化应用的低代码产品,既有特定领域特定场景的低代码平台,也有不少通用性的产品。
低代码俨然成为了企业数字化中不可或缺一环,各大巨头都在对该领域开展了布局,在资本市场也受到了极大的关注。1
1.1 编程语言的发展
目前,行业内并没有对低代码一个统一的定义,对此笔者谈谈自己对低代码的一些想法和理解。
- 二进制的世界
计算机发展历程中,人类通过计算机通讯技术开启了信息时代的革命,首先计算机(computer)的能力就是计算,计算机通过开闭逻辑模拟出0和1,仅通过只有0与1的二进制来表示整个计算机的数字逻辑世界,这就是最初的计算机的世界,这个时候人类0和1勾勒出一个初始的计算机世界。
- 编程
计算机已经可以用二进制的方式这时候人类需要让计算机按照规定的逻辑去进行计算,这时候就诞生了编程,而计算机中最核心的部件莫过于中央处理器(CPU)了。CPU从逻辑上可以划分成3个模块,分别是控制单元、运算单元和存储单元,这三部分由CPU内部总线连接起来。2 其中对于计算机编程人员需要理解的就是控制单元,顾名思义,控制单元用于控制CPU按照人为定义的方式进行计算。 用于控制CPU工作的方式就是通过指令集,指令集可以理解成某一个电路模拟的数字信号,这个特定的信号就会控制计算单元和存储单元进行具体的逻辑操作。 通过一连串的指令使计算机完成一件具体的事这也就是最初的编程。
- 从低级语言到高级语言
最初要计算机完成一件任务就需要通过一大串指令集来实现,可是机器码只是0和1这恐怕也太难了,并且当你好不容易写完了一堆机器码的程序后后续发现除了问题,可是你去修改的时候发现很难理解,你再也看不懂你原来写的代码了。
于是,汇编语言就应运而生了,通过人可以理解的一些词汇编写程序,然后再翻译成机器码,这样是不是就简单多了,于是人们开始写汇编语言了,但是这样还是很难,因为我通过编写程序来完成一件事,而我的代码中的汇编语言很多都是描述我对CPU的一些操作,虽然这样的方式我们能更能理解对计算机的操作了,但是我们还是在直接与CPU打交道。
于是人们又想出了一种新的方式,我们需要计算机按照人类的语言来加上简单的运算符号来完成一件事,通过一种翻译的的方式这样计算机就能按照我们人类的语言来进行工作了。不与计算机硬件打交道,让计算机通过人类语言加逻辑符号来描述完成一件任务的过程这就是高级语言。
机器语言
汇编语言
高级语言
?低代码
于是乎计算机编程语言经历了从机器语言到汇编语言,再到高级语言三个阶段,至于低代码是否能成为高级语言的下一阶段我们不得而知。就目前而言,高级编程语言任然是无可替代的。
1.2 低代码究竟是什么
- 低代码是相对的
相比于机器码和汇编语言,通过高级语言的方式使得计算机为我们工作,那高级语言相对于机器语言和汇编语言是否相当于是一种低代码呢?
- 低代码不限于形式
低代码
可视化编辑
配置生成代码
智能提示助手
......
使用过低代码产品的用户应该知道大部分产品都是通过视图组件、逻辑组件的拖拉拽啊来完成一个程序,那是否低代码就是可视化+逻辑操作配置?
相信很多写过java web程序的开发者都是用Mybatis-Generator这样的一款插件,只需要数据库连接加一些配置就可以自动生成增删改查sql已经数据表映射对象,这样自动生成代码的方式是否是低代码呢? 可见低代码的形式是值得我们思考的一个问题。
- 回归原理,代码的本质是什么
就目前而来,只要由图灵机诞生的计算机世界不发生重大革命,计算机执行的任务始终是0和1组成的机器码,不管高级语言、低代码发展到什么阶段,计算机执行的底层逻辑始终没有发生改变,最终不论是任何低代码产品都是帮助我们更高校更直观的方式来获得一个帮助我们完成既定任务的一个程序。所以低代码、零代码产品都是用于完成这样一件事的工具。
- 2021低代码行业研究报告. 艾瑞咨询 ↩︎
- 处理器结构. 百度百科 ↩︎