本文导读
► 前言
“低代码” 的概念是 Gartner 提出来的,已经连续发了几年的报告了,最近国内关于低代码的讨论也比较火热,我把这几篇报告搜索下来好好研究了一下,发现了一个重大问题!其实严格的说起来,国内很多所谓 “低代码” 产品,都是不符合真正的 “低代码” 概念的!
► 为什么说国内所谓低代码产品都是“伪低代码”?
国内的低代码概念,主要集中在 快速开发
和 降低门槛
上,这样很多企业软件产品基本上都能套上 “低代码” 的光环!那么实际区别到底在哪儿呢?
我结合 Gartner 报告总结了以下几方面核心要点。
① 开发完整性
提供一个低代码的 IDE,来完成设计、开发、数据和部署的过程;也就是可以对应用进行 全生命周期管理
。
国内现状:提供多个 SaaS 产品,没有统一的 IDE 界面;数据开发能力相对缺乏,很多只是表格,甚至没有数据库的能力。
② 应用独立性(按此标准看多数国内产品都是“伪低代码”)
所开发出来的应用,是否可以不依赖原系统独立运行,也就是看开发出来应用是否可以导出,单独运行。
国内现状:多数平台所开发出来的应用,只能在平台内运行,没有办法脱离平台,也就是说并不是可以 “独立的应用”。例如:明道开发的应用无法在氚云上运行,宜搭、轻流、简道、红圈等也是如此;这些应用其实都是走的 CRM 和 CMS “内部应用” 的路子,在国外Zoho、Salesforce 一开始也是这么做的。但严格意义来讲这些产品确实不算是低代码产品,至少 Gartner 是进不去的。
③ 逻辑完备性
支持设计应用的前后台的数据逻辑和业务逻辑(包括存储,不依赖第三方工具或平台)。
国内现状:多数是支持表格逻辑,类似 Excel 的在线版本(其实功能赶不上 Excel),而并不是数据库逻辑,一些后台甚至都不是采用数据库来支持。做的比较好的,支持数据库的连接和查看,能支持控制数据库,生成 SQL 语句的那就凤毛麟角了。对于业务逻辑,除了两三家,几乎都是通过 Blocks 的方式来配置解决的,不能够直接控制编写业务逻辑,或直接生成业务逻辑代码。
④ 可接入
对 API 支持良好,可以接入外部 API,可提供服务 API 供外部接入;可接入外部的多种数据库,可以显示、管理、命令控制。
国内现状:国内多数产品都支持 API 的连接,这个大多数都可以支持。
⑤ 可集成
可以集成现有前端后端的各种库、框架、SDK,能共同编译或直接使用;例如 Element UI,Echart,JDK…等。
国内现状:这个要求比较高,能够支持引入外部库的系统就不多,也基本是前端 JS 库为主,支持动态引入 JDK 好像还没有。
⑥ 可重用
低代码本身的组件化和模块化能力,也就是抽象再抽象,封装再封装,重用再重用。
国内现状:基本都有自身的组件系统,但是用户可以自己开发组件插入的不多;通过现有低代码开发平台,生产可重用的模块的就更少了。
⑦ 付费方式(重要)
此外必须要关注的还有付费方式,如果是按最终用户数来进行收费的,从模式上讲其实都没有摆脱 SaaS 的影子,也说明应用是无法完全 “独立运行” 的!只有按 开发者数量
收费,或 开发应用数量
收费,或 云资源
进行收费,才具有 PaaS 特征,我觉得这样才算是开发平台,否则就是一个 SaaS!
► 各大低代码平台属性对比
按照以上的能力要求,我做了一个表格,将各大低代码平台相关属性进行了对比(已经把重点的抽象出来了):
平台 | IDE功能 | 应用完整 | 逻辑完备 | 云部署 | 可集成API | 付费模式 |
---|---|---|---|---|---|---|
Mendix | 4星 | 5星 | 4星 | 4星 | 5星 | 按应用+最终用户 |
iVX | 5星 | 5星 | 5星 | 5星 | 4星 | 按开发者人数+云资源 |
power platforms | 3星 | 3星 | 4星 | 5星 | 4星 | 按最终用户+应用数 |
活字格 | 4星 | 3星 | 2星 | 3星 | 4星 | 按最终用户+并发 |
无远 | 4星 | 3星 | 4星 | 无 | 4星 | 按组件数量 |
牛刀 | 3星 | 3星 | 2星 | 3星 | 4星 | 按应用数量+托管 |
氚云 | 3星 | 无 | 4星 | 云部署无法导出 | 5星 | 最终用户数 |
宜搭云 | 3星 | 无 | 3星 | 云部署无法导出 | 5星 | 最终用户数 |
明道 | 4星 | 无 | 3星 | 云部署无法导出 | 5星 | 最终用户数 |
云表 | 2星 | 无 | 4星 | 云部署无法导出 | 3星 | 并发 模板数 月数 单价 |
引迈信息 | 2星 | 4星 | 4星 | 无 | 4星 | 传统软件授权 |
- 宜搭云、氚云、明道、轻流:都类似 SaaS 开发框架,不支持导出单个应用;也就是开发出来的应用都只能运行在它们系统内部,类似早期 CRM/CMS/ERP 系统。
- 云表:更老一点儿,还是 C/S 的架构的表格 ERP/表格系统。
- 引迈信息:需要下载安装的 ERP 开发框架,和 odoo 类似。
► 为什么要单独介绍低代码平台 iVX?
iVX 是什么?是工具?是平台?是语言?是云计算的发展方向?总之,不管怎样,只要你用着爽,能帮你解决实际问题,就说明 iVX 是有价值的。
你可以将 iVX 看作前端或者中台的 代码生成器
,这里我没有说后台,因为在 iVX 看来后台是连接 IaaS 层资源的相对固定的模块,iVX 已经编译成 DLL,供大家免费下载。开发者通过 iVX,编写前端的布局、交互逻辑,以及中台的业务逻辑,iVX 会先生成 AST 抽象语法树,然后再根据 AST 生成对应的 Javascript 代码。如果是其它应用(例如微信小程序),会编译成对应微信小程序原生代码。
iVX 试图找出应用开发的最短路径,最大化提升开发效率,但是也不妨碍你将 iVX 用作你觉得合适的场景,例如辅助教学工具、原型开发工具、论文辅助开发工具、甚至产品原型工具。
注意,虽然 iVX 可以导出类似 Javascript 这样的代码,但是非常不建议开发者直接去修改这个代码本身,因为一旦修改之后,就再也无法导入到 iVX 的 IDE 系统进行二次开发了。
值得一提的是 多人开发
的机制,iVX 创建了一套类似 git 的产品,这套产品之所以说类似 git,主要是 git 是基于 “一行行代码的文本的” 多人开发协作管理系统,而 iVX 是 基于对象
的,所以需要独立开发一套全新的适合 iVX 自己的 git 系统出来。
学习电梯直达: