前言:随着低代码渐火,一方面,资本市场纷纷将眼光投向这个赛道,另一方面,更多企业将低代码视为数字化转型利器。而与低代码居高不下的这种热度相伴而来的,是一场关于低代码的概念之争,有的人认为它是第四代编程语言,有人认为它是开发模式的一种颠覆,也有人认为它是企业数字化管理工具的变革……今天让我们来听听云畅科技联合创始人、CTO胡艳平的低码洞见,以下为访谈原文内容。
2022年低代码这个赛道是非常喧嚣的,很多的软件公司加入到了这个赛道,很多资本投入到了这个赛道,以至于“低代码”这三个字装入了太多的内涵。最近我们跟很多客户、合作伙伴、投资人、制定标准的专家,进行了很多交流,交流中有不少观点的碰撞,不少的疑惑。我想选择遇到次数最多的4个问题,把一部分内容分享给大家,大家也一起思考思考,我们云畅应该如何去看待这些问题。
01.Visual Studio 是不是低代码开发工具?
业内有不少专家在讲低代码历史的时候,会追溯到十几年前,不可避免的会提到Visual Studio、Power Build等早年的编程工具。有部分专家觉得这些工具,具有可视化的界面,能够不用代码生成部分软件的界面,也有部分专家觉得这些工具,天生就是为了代码编程而设计的,不应该归为低代码开发工具的范畴。
我认为Visual Studio这类工具非常强大,适配C#、F#、VB、Javascript、Python等多种编程语言,它的主要目标是为了提高“编代码”效率,为了更快的写代码,而不是不写代码或少写代码。至少到目前为止不应该把它归纳为低代码开发工具。
02.代码生成工具,是不是低代码开发工具?
我们在给某合作伙伴演示的时候,他们的研发中心就有人提出:“万应低代码跟我们内部的代码生成工具很像,我们也可以快速生成Java代码,然后基于这些代码做二次开发就行了!”很多做开发的人通常认为,只要做个根据数据库结构生成后台代码,拖拽一下生成前端代码的工具,就是低代码工具。
这个问题我在信通院和信标委的标准讨论会上,也讨论过。大部分专家觉得,如果生成的代码,经过二次开发后,还能利用那个代码生成工具继续加工,那就应该是低代码开发工具,如果不能,那就只能是代码生成工具。我认为判断一个工具是不是低代码开发工具,首先要看两点:
1)核心目标不应该是给程序员使用,不是为了编代码而设计的工具;
2)工具生成的代码修改后,应该能回到工具二次加工。如果这个工具生成的代码不能形成业务闭环,必须要脱离工具进行修改,而修改后台的代码无法重新导入到这个工具再次加工,那就只是一次性的代码生成工具。
03.低代码开发工具和低代码开发平台的区别是什么?
我在参加信通院低代码标准能力讨论的时候,其中有一个章节,就专门提出了低代码开发工具和低代码开发平台的概念。我们平常向客户介绍云畅的业务分为三个部分:工具+交付+培训,也就是潜意识里,我们一直也没有去思考工具和平台的区别。
当时就有专家解释了要把低代码开发工具、低代码开发平台拿出来单独定义的主要原因:
1)现阶段大部分厂商都是做低代码开发平台的,有一些企业内部的小工具可以纳入低代码工具的范畴,需要给客户选型时有个清晰的概念;
2)低代码开发平台做的事情比低代码开发工具做的事情要广泛得多,需要避免被混为一谈。
我认为二者主要有以下几点区别:
1)参与软件开发的环节多少不一样
低代码开发工具,主要降低对传统程序员编码这个环节的依赖。低代码开发平台除此之外还会关心数据建模、接口集成、制品的部署、甚至运维监测。
2)参与软件开发的深度不一样
低代码开发平台,应该要具备对某个业务场景的闭环能力,就是应该要能开发完整的业务场景。低代码开发工具则只需要实现其中的一部分也可以,比如可以生成界面、生成后台业务逻辑、工作流程逻辑中的任何一部分就行。
3)参与软件开发的协作程度不一样
低代码开发平台应该要具备多人协作的能力,要支持多个人一起去完成一个项目,每个人的角色可能不一样,使用低代码平台对应不同的功能。而低代码开发工具,则不一定需要支持多人协作,一个人完成相对聚焦的内容就行。
04.零代码开发平台和低代码开发平台的区别是什么?
好多人认为不用写代码的就是零代码开发工具,写少量的代码的就是低代码开发工具,有和无是人们最好理解的定义。好多厂商也利用大家的这个“常识”,把自己的产品装入低代码或者零代码。
我在跟一些从业专家、投资人讨论的时候,大家其实也都有不同的看法。有的觉得根据是否需要写代码来区分,很直观,但是实际产品操作选型时却没有实际参考价值。有的觉得零代码和低代码,应该完全区分到两个赛道,是SaaS和PaaS的区别。
我个人认为不应该从“零”代码还是“低”代码的维度,去区别这个赛道的产品,而应该从底层的设计逻辑去区别,应该要从“表单驱动”、“模型驱动”来区别。主要的理由如下:
1)大部分表单驱动型低代码平台,符合“零代码”或几乎“零代码”的特点。它们能实现的逻辑比较简单,用户也容易上手,有些业务场景会受到限制。
2)大部分表单驱动型低代码平台,更关心界面、数据的增删改查,这些场景适合用零代码来实现。
我觉得如果一个低代码开发平台,它不写代码,也可以实现复杂的业务逻辑,也不应该笼统的归纳到“零代码”平台,而主要看这个平台底层是不是模型驱动。也就是相对于零代码,低代码平台需要符合以下几个特点:
1)用模型驱动,而不是表单驱动。
2)强个性化的界面定制能力,而不是统一格式的表单。
3)具有很强的逻辑编排能力,包括后台业务逻辑的编排和前端交互界面的逻辑编排。
4)提供SDK和脚本语言的支撑,解决一些通过“拖拽”不好实现的逻辑处理。
因此个人觉得,不妨把零代码约等于表单驱动型,把低代码约等于模型驱动。万应低代码90%以上的业务场景不用写代码都可以实现,核心原因是万应低代码选择了模型驱动,同时设计了强大的逻辑编排引擎,绝大部分代码逻辑可以通过拖拽实现。
作者:云畅科技联合创始人、CTO 胡艳平
– END –
大佬观点