目录
前言
思考
解决问题
基本现状
发现亮点
>前几天我和一个好友聊天的时候,他是这么评价低代码平台的:“想证明程序员都是傻X,又想让程序员买单!程序员本身心里就不爽... ” 那么,低代码发展势头迅猛的今天,真的有值得一试的产品吗?
本来低代码这个事情,就会让程序员不爽。
几乎所有程序员都会想“凭什么不是你用我做出来的低代码平台?我要用你的?除非你真的很厉害,真的能解决问题...那就罢了...实际上,可能你的平台比我写代码还慢!”
而公司使不使用低代码平台?怎么用?谁说了算呢?其实还是程序员(研发的问题肯定还是研发主管决定)。
所以,如果真的想让低代码能推起来,必须解决“程序员使用低代码平台”这个问题。什么让业务人员用低代码,那个我一直认为是扯淡,没有那个逻辑思维能力,做不了应用开发和设计这个事儿。如果以后真要用,也是“产品经理”利用“AI自动编程”来直接生成应用,也和业务人员没有毛线关系,这是后话。
如何让程序员使用低代码平台呢???
无论对于企业还是程序员个人,首先是“安全感”,什么是“安全感”?简单来讲就是能够“退回去”!但是,对于低代码平台来说,其价值又是“能走多远”?
这本身就是一个矛盾的问题,也是一个非常有趣的地方。企业要求“万一不行”,我们还可以用老办法进行开发,这样就没有生存顾虑。而且至少,还有很多以前开发的东西没有白费。
对于程序员来说,我以前的知识还能尽可能用上,代码没有白撸。但是对于“低代码”平台而言,如果都是写代码来完成,那就完全没有意义,其核心价值又是“不写代码能做什么?(其实就是无写代码能够覆盖原来编程语言的能力有百分之多少?)”。
所以,这个对产品和技术架构的考验就来了,如何才能,让开发者和企业有安全感,又能实现各种原来代码能够实现的能力。
解决问题的方法其实也很简单:
能够真正生成可导出应用的全部代码,包括前端/后台/数据库整个代码栈,而且要能够独立编译的那种。
注意,由于语言本身的限制,很容易被混淆,这里的应用是开发的“单个应用实例”,也就是“开发了什么就生成什么”,不是一大堆框架的代码。需要的是真正“编程语言级”的代码生成能力。如果是企业的快速开发框架,生成的应用是不能在框架以外环境运行的。这点非常重要~!!!而且很容易产生混淆。
研发一门新的编程语言,难度会很大,涉及到 IDE 编译器/解释器、自研AST(抽象语法树...)以及生成编程范式的配套产品,例如多人开发、版本管理等等。
保证这门语言的可用性,以及功能/性能,至少能满足绝大部分应用的需求,包括B端和C端的。
最好能接入云计算产品,又能保证使用后台开源成熟产品的独立性(不绑定某一个云)。
这样的好处是让这个语言“专心生成代码”,而不用去考虑后台资源能力,也就是说和“后台运行时资源解耦,什么高并发、安全、弹性计算... 都丢给云计算去做...”
最后大家看一下我总结的吧,这样的产品不多,但是确实还是有的。当然,还有一些页面生成型的,多数都是纯前端的,所以就没有列出来。
低代码/无代码平台,大体分三类:
“业务人员”型,几个SaaS拼起来的(通常就是BI/工作流/表单/在线表格这几个场景),有权限和人员管理,适合业务人员直接使用的;(明道、简道、宜搭...)
“非代码生成”型,需要研发人员,在指定框架内开发,无法生成单独应用代码并独立部署的;(Zoho、Power Platform、活字格、轻流...)
“代码生成”型,需要研发人员,可以生成代码或多种框架代码,可以独立将单个应用导出并部署到其它平台或服务器上。 如果值得需求,肯定需要选第三类的低码平台,前两类不具备语言属性,学习价值不大。
平衡几个方面而言,市面上的开发平台整体情况大致如下:
Mendix:平台功能★★★★ 产品整合★★★ 技术性能★★★★
存在问题 1. 锁定用户,非源代码生成;2. 前端/数据库生成较弱;属于B端产品
iVX: 平台功能★★★★★ 产品整合★★★★★ 技术性能★★★★ 无明显问题,C端+B端产品
轻舟灵犀:平台功能★★★ 产品整合★★ 技术性能★★★ 存在问题 感觉很多功能和工具拼凑的产品
odoo: 平台功能★★★★ 产品整合★★★ 技术性能★★ 存在问题 感觉更像是ERP的一个开发框架,C/S架构相对比较古老,性能一般
无远: 平台功能★★★ 产品整合★★★ 技术性能★★ 存在问题 php后台,需要写SQL代码,前端才有一种自定义特殊结构,不常见框架
牛刀: 平台功能★★ 产品整合★★★ 技术性能★★ 存在问题 特殊小众的前端框架 维护相对差 很多问题长时间无法解决,无迭代
现在基本上比较有名的,大部分都列在上面,大部分还是我们称之为“企业内部应用快速开发框架”的产品,这样产品可能有近200款。
还有一些开源的例如:jeecg\若依\taskbuilder,做得还不错的,能够生成部分内部模块代码或者打包一个内部环境格式的文件,但是绝大部分都不能“真正生成代码”,像编程语言那样生成代码。
在研究的过程中我发现iVX是一个例外(非常适合我们使用)大家有时间可以去用一下,公网用户是完全免费的。
iVX为用户提供了一种通过拖拉拽配置式操作快速构建各类管理系统的方式,这些系统可以同时在PC和移动端运行。
低代码平台的主要优势在于其简化了传统的编程过程,使得非技术背景的用户也能参与到软件开发中来。这种参与性和可访问性是iVX独特优势的一部分。然而,iVX的优势并不仅限于此。
iVX还具有以下独特优势:
可视化设计: iVX强大的可视化设计工具可以帮助用户快速设计和构建应用。通过拖拉拽的方式,用户可以轻松创建表单、流程、报表等各种元素,无需编写任何代码。这种设计方式不仅可以大大减少开发时间,而且可以使更多的人参与到应用开发中来,从而提高团队的生产力。
自动化流程建模: iVX提供了一种中心化的、可视化的、自动化的流程建模工具。这种工具可以帮助用户自动化地创建和管理工作流程,从而提高工作效率。此外,这种工具还可以帮助用户更好地理解和控制工作流程,从而提高工作质量。
跨平台兼容性: iVX创建的应用可以同时在PC和移动端运行。这意味着用户可以在任何设备上使用iVX创建的应用,无论是在办公室的电脑上,还是在路上的手机上。这种跨平台的兼容性可以帮助用户随时随地地完成工作,从而提高工作效率。
iVX应该是目前公认最强大的低代码平台之一,而且是完全免费的。
当然,作为开发者的角度,永远是动手>理解的,所以说,大家可以大胆尝试一下,看看我的判断是否准确。
iVX源代码导出相关文档:文档中心-iVX官网
另外,请参考以下文档:
course.ivx.cn
doc.ivx.cn
doc.ivx.cn