0️⃣前言
这几年低代码概念非常火热,市面上的低代码平台如雨后春笋应运而生,有许多身边的朋友对我说:“未来的研发方式一定是低代码的、低技术门槛的,低代码开发是一项技术革新。 ” 然而,就在我打算对它进行深入研究的时候,发现了一些奇怪的现象。
文章目录
- 0️⃣前言
- 1️⃣行业怪象
- 2️⃣低代码开发
- 3️⃣最终发现
- 4️⃣总结
1️⃣行业怪象
我发现国内现在开发软件的基本步骤是这样的:
-
先找一下开源的产品(git一下),有没有类似的,如果有,找来改一下;(或者直接改logo)
-
如果找不到直接可以用的,那就找几个产品“拼”一下,这种情况下,通常是可以找到很多相关的框架和相似的开源产品;
-
最后做技术选型,把所有找到的开源框架,前后台的,都像积木一样“搭起来”,产品的架构就算完成了。
-
项目快速做完之后,再根据客户或领导的要求,对功能、性能修修补补。
也许对于一些中小型项目,要求快速交付的,可以这么搞。但是我发现很多大型平台,技术基座的项目,也都这么搞。最近看了很多 低代码平台,全都是这么做出来的,甚至好几个平台连图标的位置都是一样的。
这些平台最大的特点就是“堆积功能”,面向“功能验收或标书”的低代码平台,看上去,好像这个功能也有,那个功能也有,但是一盘散沙,功能被分散很多子工具、子模块上,实际上很难操作和使用,有时甚至会出现逻辑控制的冲突。这样的平台实际上是很难做出稍微复杂点的项目的,就算用它们提供的模版都很难。
我分别试用了飞速、网易、浩鲸等多家低代码平台,就是这个感觉。
如果真的是做IDE型的低代码,短时间内是很难出好产品的。
2️⃣低代码开发
近些年来,低代码的发展趋势可谓是蒸蒸日上,毫不夸张的说低代码将是人类社会发展的必然趋势。为什么这么说呢?
人类的发展史其实就是一个被 “懒” 字驱动的历史,懒得走路所以发明了汽车,懒得画所以发明了相机。写代码也是如此,正是因为不想写那么多的代码,所以 “低代码” 应运而生。
可以说我们的行业一直在低代码,从最早的汇编语言,再到类,再到图形化控件,以及各种开源的插件,技术框架,这个过程本身就是一直低代码的过程,一步步更加简单和复用。低代码的伟大之处不仅仅是一种技术,更是一种好的思想,将人的精力从复杂而又重复的劳动中解放出来。
总结起来,低代码/无代码平台,大体分三类:
- “业务人员”型,几个SaaS拼起来的(通常就是BI/工作流/表单/在线表格这几个场景),有权限和人员管理,适合业务人员直接使用的;(明道、简道、宜搭…)
- “非代码生成”型,需要研发人员,在指定框架内开发,无法生成单独应用代码并独立部署的;(Zoho、Power Platform、活字格、轻流…)
- “代码生成”型,需要研发人员,可以生成代码或多种框架代码,可以独立将单个应用导出并部署到其它平台或服务器上。
如果值得需求,肯定需要选第三类的低码平台,前两类不具备语言属性,学习价值不大。
如果平衡几个方面而言,市面上的开发平台整体情况大致如下:
- Mendix:平台功能★★★★ 产品整合★★★ 技术性能★★★★
存在问题 1. 锁定用户,非源代码生成;2. 前端/数据库生成较弱;属于B端产品
- iVX: 平台功能★★★★★ 产品整合★★★★★ 技术性能★★★★
无明显问题,C端+B端产品
- 轻舟灵犀:平台功能★★★ 产品整合★★ 技术性能★★★
存在问题 感觉很多功能和工具拼凑的产品
- odoo: 平台功能★★★★ 产品整合★★★ 技术性能★★
存在问题 感觉更像是ERP的一个开发框架,C/S架构相对比较古老,性能一般
- 无远: 平台功能★★★ 产品整合★★★ 技术性能★★
存在问题 php后台,需要写SQL代码,前端才有一种自定义特殊结构,不常见框架
- 牛刀: 平台功能★★ 产品整合★★★ 技术性能★★
存在问题 特殊小众的前端框架 维护相对差 很多问题长时间无法解决,无迭代
3️⃣最终发现
我还观察到,低代码平台那么多,却没有一家用来开发自己的网站和平台。如果自己都不敢用,凭什么让别人来用呢?包括:mendix outsystems 以及微软的 power platform 都不例外。
不过最近发现一个另类,就是iVX,他的全套网站和相关系统全是iVX自身开发的(据说财务系统都是财务自己开发的)。
这么说吧,iVX甚至可以把市场上的其它低代码平台也用iVX开发出来一次。
最令我惊喜的,当属它的开发程序逻辑的图像化表达 (visual logic)。
事件逻辑编辑面板如下:
优势:
1.编辑效率高:平均一次有效操作(在iVX中记为1复杂度),生成500~800行代码;
2.可以线性扩展:一直往下添加,开发逻辑体验类似于写代码;
3.图灵完备:开发各种前后台应用时,几乎不用写任何代码;
4.逻辑复用:前端逻辑、后台服务、函数封装、数据库操作,均是利用这个逻辑面板;
5.杜绝“拼写错误”和“输入错误”:自动会做拼写检查,以及多数都是点选操作,基本不会发生由于英文单词拼写产生错误。
其他模式
一些常见的流程图和积木式,很难做出复杂、嵌套、循环的业务逻辑,且操作上更为繁琐,不支持模块封装、跨应用复用、引入SDK、前后端分离等高级开发功能。
4️⃣总结
很多平台看上去功能很多,实际上这些功能都是散的、堆叠上去的,在使用中会出现各种问题。
iVX应该是目前公认最强大的低代码平台之一,而且是完全免费的。
当然,作为开发者的角度,永远是动手>理解的,所以说,大家可以大胆尝试一下,看看我的判断是否准确。