互联网的精髓就是共享,可以共享技术、共享经验、共享情感、共享快乐~
很多年前就有这个想法了,从事IT行业时间也不短了,应该把自己工作和业余所学习的东西记录并分享出来,和有缘人一起学习和交流。
如果您是那个有缘人,请上岛一叙!爪哇岛随时欢迎您!
上世纪八十年代,就有美国公司和实验室开始研究程序可视化编程这个领域,做出了4GL“第四代编程语言”,这是最早的低代码雏形。
2010年麻省理工又将这一概念应用于儿童编程领域,产出了风靡全球的Scratch。
2014年,研究机构Forrester Research正式提出了“低代码/零代码”的概念,它的完整定义是“利用很少或几乎不需要写代码就可以快速开发应用,并可以快速配置和部署的一种技术和工具”。
西门子以6亿欧元的价格收购低代码应用开发平台Mendix,着手探索低代码平台为公司服务。
Mendix-被西门子用6亿欧元收购的新独角兽,Low-code开发平台
专攻企业应用开发,面向B端用户,一般是面向有开发团队的中大型企业,提供模型驱动IDE和微流,减少代码量,使业务人员可以通过可视化组件参与到开发过程中,与程序员在Mendix platform上合作开发本企业的应用。提供一些企业解决方案、模板,开发平台上也支持自定义UI和组件。
可视化组件可以减少部分代码量,但是这些组件的颗粒度不够精细,逻辑也不够完备,很难完全满足企业个性化的需求。开发之后的调试和测试,需要额外使用另外的几款软件,既增加了使用成本,又增加了对代码的要求。
Outsystems-独角兽公司,国外知名的drag drop IDE
用户以国外大企业居多,外企接受度高。开发者承接项目单价很高,在全球组织本地的客户服务团队。可拓展性强,支持智能硬件。 多用来开发流程类应用,可以实现全栈快速开发,支持从UX到后端集成的所有内容。大型应用程序端到端DevOps和生命周期管理。
但是因为技术是早期技术,IDE界面古老,操作不友好。想使用可视化组件降低代码量,但是并没有太好的做到可视化和coding的平衡,而是把coding的复杂程度转移到了使用、调试组件的难度上,需要使用者进行大量额外的学习和练习。
代码要求高,工具控件不够丰富,很多非常基础的功能需要复杂的操作才能完成,开发时前端部分的调试非常复杂,非常耗时。后台服务也需要大量调用接口,对外的功能拓展依赖于Integration Studio等,但是兼容性不高,有时兼容Mysql都会出问题。
为了解决前端的问题,建设有UI库,正在不断完善中。但是因为技术架构的局限性,还是无法解决很多常用但是基础的问题,在试用中发现,例如,很简单的弹窗提示、下拉菜单等,都需要通过写js来实现。
Odoo-准备进军中国的企业应用Low-code编程工具
特点是开发的内容模块化,模块以业务制作成独立的APP,提供模块化的企业业务解决方案。模块分类精细,和其他解决方案公司相比,多出了支持传统制造公司的MRP、PLM、设备管理、质量管理等模块。甚至提供业务部门的PPT报告模板。
Odoo的可视化编程,对于企业业务部门而言,是通过拼装开发好的业务APP模块,搭积木式的构建企业应用。概念是非常好的,但是其实对于开发者来说,工作量并没有减少,只是企业搭建应用的时候,可以使用一些业务模块,而每一个APP模块,还是由开发者用代码的方式制作。
通过开源的方式,积累了一些模块层面的解决方案,再由具体的应用需求方拼装成可以使用的应用。所以Odoo的可视化开发,只能完成拼装的前期工作,每个组件与组件之间的链接,都是工程师使用代码完成的。
而且它最大的缺点是贵,收取开发者认证费,应用托管费,部署费,云服务费等等费用,只有大型公司,才能承受。
iVX-国内的可视化编程工具代表
核心技术是自研的VX 0代码开发框架。采用的技术和上面几家国外老公司更先进,逻辑更完备,严格来说是一种0代码编程语言,前后端全部可视化,语言模块化,分为解决方案层、模板层、小模块层、函数接入层和组件接入层,满足各类用户的需求。
在开发过程中,在IDE界面,对可视化组件添加事件,使用事件+数据驱动的综合驱动方式,动态调试,后台服务也是通过使用可视化组件完成,包括数据库组件、通信功能、docker服务,甚至还直接提供电商组件等等,开发完成后,直接在IDE界面调试和预览,开发者可以一键发布到云端,省去了运维的工作。
现在的教学视频和文档还较少,不过据观察每周都会有一些新的学习内容更新。
ivx因为是国内的工具,所以组件和国内互联网生态集成很好,而且比Low-code更强一点的是,可以 0 code开发全平台全种类应用,包括OA/CRM/ERP等各类管理系统、网站、微信小程序、小游戏、电子商城、webAPP、IOS/Andriod App、桌面原生应用。
可以全方位、多维度满足国内互联网各细分领域需求,企业办公数字化需求,企业营销数字化需求。希望ivx公司可以利用好本土优势,带动国内编程生产力的提高。