低代码格局和来龙去脉
低代码产品来源主要有三个渠道,如果不算广义的CRM、ERP系产品(Wix、WordPress、Odoo...这些),这些产品构成了现在低代码的主要格局。
渠道一:从MADP/MXDP演进而来:
MADP代表“移动应用开发平台”,其实就是做原生APP可视化开发的平台;MXDP代表“混合多体验开发平台”,实际上就是在移动原生APP开发平台基础上增加了对Web App的支持。现在有了GPT,我直接把GPT4的描述写在下面,大家就很清楚了。
大家会发现最主要的厂商都在上面... Mendix Outsystems PowerApps 等。
这类低代码产品的特定也非常清晰:多数做企业服务(会有一套完整系统安装到企业内部),有相对复杂的IDE,功能上也相对比较完整,研发的周期也比较长,大部分都在10年以上。这类型产品,主要其实也是给研发人员使用的,或者他们叫“CitizenDeveloper”,但是真正的业务人员很难学会。
渠道二:之前做“SaaS”、“BPM”以及“Bi”为主的厂商
这里面比较有名的是 ZoHo Creator、Salesforce、Airtable、AppShee、Appian 、Tableau、PowerBi等,国内有很多厂商都是从这个领域介入低代码研发的。这类型演变过来的低代码产品,往往场景比较明确(主要是“BI场景”、“工作流BPM场景”、“在线表格场景”、“在线表单场景”这四种),通常是多个“引擎”和“模型”驱动的,基本都可以给业务人员直接使用,感觉上就像是很多SaaS+用户+权限管理,开发全新场景时,灵活性会受到一些限制。
渠道三:也是重点想介绍的——代码生成平台
这类平台国内比较少,而且主要专注于“通用程序开发”,是一种底层通用技术(上面提到的更倾向于“应用开发框架”),因此也不会限制只用于“企业服务”。
国外的代码生成平台主要包括以下这些:
前端代码生成平台:WebFlow Wappler PineGrow ReactStudio
后端代码生成平台:Backendless Firebase (by Google) Stapi
数据库代码生成平台:Prisma DbDesigner SQLDBM QuickDBD
具有统一的前后台代码生成能力的就比较少了,主要有: Bubble Appgyver (By SAP) Retool ,国内就只有 iVX 一家。
有了这些基础知识,那下面介绍起来就比较轻松了。接下来....
如何评价低代码平台?
我列出了最核心的三项,以及我觉得重要的评分项,供大家参考。
核心能力一:功能和性能 ?(详细见后面列表)
(大白话就是:不写代码能做什么?做得怎么样?)这个重要性不言而喻,有些低代码平台说自己“接代码”什么都能实现,这句话当没说。核心还是一句,不写代码能做什么!这个地方我觉得可以补充一下,就是“低代码编程”和“代码编程”的关系,我们觉得最佳实践就是“充分非必要!”,即“什么代码都可以用,但是不用也都行”。
核心能力二:是否锁定 ?
我先解释一下,什么叫不锁定?最佳状态就是“和手写代码一个样”,最好“调试方式和代码管理”都可以继承。这里面分几个层面:例如“低代码平台”生成的代码可以被现有的代码形式“直接接受”,意味着原有的开发项目直接可以以插入的方式使用。另外,以前端为例,可以直接在低代码平台中直接导入以前开发“组件或代码”那是更好。其实开发者不一定需要在“二开”的时候,直接修改“低代码平台”导出的源代码(如果可以导出),而是需要这种“修改的能力”!这是一种“安全感”,这一点其实非常重要,当然难度也是最大的。
坦率的讲,想在绝大多数的低代码平台都存在锁定用户的问题,即无法实现“应用代码导出和独立部署”,有些是可以打包导出一个加壳文件,最后还是要导入到特定环境中运行的。大概如下图所示:
情形一:所有应用都在框架内部,无法导出独立部署
情形二:应用可以导出,例如导出成 mpk或osp文件,但是只能导入到自身平台环境运行
核心能力三:产品整合能力 ?
我研究过很多低代码产品,很多产品从“开源”魔改而来,“功能堆叠和拼接感”严重,看上去吧好像这个也有,那个也支持,但是用起来完全不是那么一会事儿。说白了就是“其实开发一个应用有可能比写代码还费劲”。从一个侧面反映就是,窗口数量众多、操作层级特别深、逻辑和管理混乱,有些逻辑控制甚至有多个入口。道理其实也很简单,现在无论大厂小厂要开发一个产品时,先就找对应的开源产品和框架&#x