低代码平台:IVX 重新定义编程

目录

🍬一、写在前面

🍬二、低代码平台是什么

🍬三、为什么程序员和技术管理者不太可能接受“低代码”平台?

🍭1、不安全(锁定特性)

🍭2、不信任

🍬四、IVX低代码平台

🍬五、IVX低代码平台优势

🍭1、无缝的云原生体验

🍭2、可视化设计

🍭3、图灵完备逻辑编排

🍭4、代码生成能力

🍭5、保持代码编程逻辑

🍭6、支持结合代码开发

🍭7、支持生成代码和导出

🍬六、iVX 相较于编程语言的优势

🍬七、总结


  🦐博客主页:大虾好吃吗的博客

  🦐专栏地址:闲谈专栏地址

一、写在前面

        高级编程语言诞生已经过去了大半个世纪了,在我们看来,什么都在进步,但是编程语言的发展却有些缓慢了。虽然现在语言更加丰富,框架更多,但是最基本的编程方式还是没有任何改变,就是“写代码”,其实在英文中“Programming”和“Coding”是两个单词,有没有可能,我们只“编程”而不“写代码”?

        图形化的编程思路,在几十年前就有许多公司和团队想到过,并且构思出了很多优秀的产品,一些是“图形+代码”快速生成某种编程语言的产品,例如Visual Basic、Dreamweaver、Delphi、C++Builder、JBuilder等等;再到硬件设备图形化编程产品Labview;以及科学计算领域大名鼎鼎的Matlab;都能看到图形化编程的影子。

二、低代码平台是什么

        低代码平台是一种软件开发工具,它旨在帮助开发人员通过最小的编码努力来创建应用程序。这些平台使用可视化界面和图形化工具,使开发人员可以通过拖放和配置组件来构建应用程序,而无需手动编写大量的代码。低代码平台提供了预先构建的模块和组件,以及集成了常见功能和服务的工具,例如数据库连接、API 集成和用户界面设计。通过低代码平台,开发人员可以快速搭建原型、快速迭代和部署应用程序,提高开发效率和减少开发成本。

三、为什么程序员和技术管理者不太可能接受“低代码”平台?

我先总结一下,大部分低代码的特征:

1、 为企业定制的一种内部开发框架,运行时的,整体安装到企业内部,属于企业服务;(还有一种纯SaaS的,国内更难推,不在这里讨论)

2、大部分应用,还是需要代码开发,只是说代码量可能会少一点;但是,开发出来的应用,终身只能在“运行时”环境下运行,不能导出独立部署;

为什么程序员和技术管理者不太可能接受“低代码”平台?

1、不安全(锁定特性)

        大部分“低代码”平台实际上是一个为企业定制的“产品”,而不是“一种新技术”!更像是一个“空中楼阁”,只能进不能出那种,由于无法生成代码,因此一旦选择某一“低代码平台”,基本上等于把身家性命都押上了,一旦“平台有事”,基本上会“颗粒无收”,甚至影响现有的运行业务。国内,有上百家类似的低代码平台,基本上都是同质竞争,因此风险极高。因此,我认为技术管理者不敢使用。

2、不信任

        程序员只相信“代码”,哪怕是自动生成的代码,也是可以接受的。如果不能生成代码,这将和程序员基本“认知”相冲突,并且这也将阻碍程序员去进一步参与建设“低代码”平台。在程序员眼中“不能生成完整代码”、“不能导出进行编译/调试/运行”的系统是不能被接受的。

四、IVX低代码平台

        iVX和其它低代码的区别,可以用一句话说清楚:iVX做的是“开发态”,拖拽生成全栈代码;其它低代码平台做的是“运行时”,配置生成应用。

        生成代码代表了一种可逆性,意味着从技术上可以选择将无代码开发的应用“回退”为纯代码版本。将来也许有一天需要继续使用代码开发,或者说从技术上可以更好和现在所有“代码编程”范式直接使用或对接。
        目前,绝大多数“低代码平台”,包括国外Mendix、Outsystems、PowerApps等,无一例外都是给客户(企业)安装一个运行时(aPaaS),所有配置出来的应用,都必须在这个“运行时”内部“运行”。就算能导出文件(例如Mendix导出mpk文件),还是只能在Mendix系统环境内运行,这就意味着,这种技术路线是不能“回退”的。假如有一天这些国外平台撤离中国,所有在其平台投入和积累都将“付诸东流”。
        然而,iVX是由国内非常优秀的研发团队打造,不仅支持无代码开发,还提供了一种全新的代码“生成”模型,用于直接生成前端(react/vue)、后台(Java/node)和数据库的代码,iVX的技术上本身就是“可逆的”,支持导出源码。因此,开发成果不会被“锁定”在这个平台了。

        IVX官网:iVX—人人都能掌握的可视化编程语言-ivx官网

五、IVX低代码平台优势

1、无缝的云原生体验

        iVX提供了一种无缝的云原生体验,使开发者可以在浏览器中直接进行开发,不需要安装任何软件,大大提高了开发效率和便捷性。

2、可视化设计

        iVX强大的可视化设计工具可以帮助用户快速设计和构建应用。通过拖拉拽的方式,用户可以轻松创建表单、流程、报表等各种元素,无需编写任何代码。这种设计方式不仅可以大大减少开发时间,而且可以使更多的人参与到应用开发中来,从而提高团队的生产力。

3、图灵完备逻辑编排

        iVX形成了一套“自洽”且“图灵完备”的逻辑系统,并且在前后台的逻辑处理中都复用了这套逻辑系统。这是一种基于“触发式”的面板系统,并且可以线性扩展,相比基于“流程图”的逻辑编排系统更具优势。

4、代码生成能力

        无论前端或后台代码,iVX都可以编译后快速生成。过程中,iVX会先生成AST抽象语法树,然后再根据AST生成对应的代码。如果是其它应用(例如微信小程序),会编译成对应的微信小程序原生代码。下面是由IVX生成的代码,完美应用VUE。

5、保持代码编程逻辑

        iVX去掉的是程序语法部分,而解决问题的逻辑部分完全保留下来。因此与目前编程的逻辑并不冲突,程序员上手不用担心,不论是开发前端还是后台,擅长C还是Python,都可以快速学习并具备使用iVX开发各种应用的能力。

6、支持结合代码开发

  • 自定义组件

        iVX支持自定义前端组件,如果程序员觉得现有的几百个组件不能满足需求,完全可以根据iVX提供的文档(一个map格式),自定义自己的前端组件,并集成到iVX的组件窗口中。

  • 自定义函数

        在iVX中,有一个组件叫自定义函数,可以方便写Javascript代码,前端和后台都可以写。用于处理数据等各种操作。

  • 贴JSON代码(通用变量)

        通用变量支持 JSON 数据导入,系统将自动解析其数据结构并建立变量。
        该变量可通过循环创建组件进行调用,原理类似于二维数组。

  • 写SQL语法(DBO)

        在iVX中,对mysql、ES(全文搜索)、nosql(表格数据库 AWS DynamoDB)支持是最好的,可以通过AST(抽象语法树)直接生成数据库支持的各种语法程序。

        而对于,Oracle、SQLServer这些数据库,iVX提供专门一个DBO组件进行控制和管理(DBO层则需要用户自行写SQL语法)。未来争取将Oracle和SQLServer等常见数据库,也整合到AST中,这样就可以不用写SQL语法了,操作会更简单。

7、支持生成代码和导出

程序员可以这么去理解iVX的概念,就把iVX当成一种方便的代码生成器。

iVX前端 = React可视化代码生成器
iVX后台 = 业务逻辑代码生成器(现阶段JS代码)+ SQL代码生成器


        在云资源部分,iVX相当于挑选了云计算公司的核心产品,并通过组件的方式提供给应用开发者。当使用iVX云资源进行应用投放时,用户几乎不用担心“并发能力”,因为在iVX后台所有IaaS层资源都是弹性,你可以理解成“Serverless”中“BaaS(Backend as a Service)”和“FaaS(Function as a Service)的合集”。

 

六、iVX 相较于编程语言的优势

        在了解了 iVX 与传统编程语言的设计差异之后,我们进一步从四个角度来分析 iVX 相对于传统编程语言的优势。
1. 学习效率
iVX: 对于有编程基础的人来说,仅需 1~2 周的时间就能掌握 iVX,成为全栈工程师。即使是没有任何编程基础的人,也只需 1~2 个月的时间。
传统编程语言: 学习前端、后端和运维通常需要 3~5 年的时间。

2. 开发效率
        iVX: 通过可视化的鼠标操作和丰富的组件库,iVX 可以将研发效率提升 5 倍以上。据统计,一次有效的 iVX 操作可以生成 500 行以上的代码。
        传统编程语言: 通常需要手动编写大量代码,效率相对较低。

3. 运维效率
        iVX: 由于开发效率高,因此需要更少的开发人员和项目管理人员。同时,iVX 支持 CI/CD、敏捷开发、DevOps,并且与云计算产品(如 AWS、Azure 等)有很好的集成,大大降低了运维成本。
        传统编程语言: 通常需要更多的人力和时间来进行项目管理和运维。

4. 代码质量
        iVX: 由于所有操作都是可视化的,几乎消除了代码拼写错误的可能性。同时,由于逻辑是通过图形化组件来实现的,因此代码逻辑更加清晰,更易于维护。
        传统编程语言: 由于代码是手动输入的,因此更容易出现拼写错误和逻辑错误,这增加了代码维护的难度。
        综上所述,iVX 在学习效率、开发效率、运维效率和代码质量方面都展现出了显著的优势。这些优势使 iVX 成为一种具有革命性潜力的新型编程范式,值得各方面给予高度关注。

七、总结

        iVX 不仅代表了一种全新的编程范式,而且在多个方面都具有明显优势,预示着软件开发领域未来可能的发展方向。 ivx打开即可使用,不需要你下载任何应用。直接在浏览器端就能够开发,不仅可以开发前端,还可以开发windows以及其他系统平台的应用。小伙伴们快去体验吧,官网地址:iVX—人人都能掌握的可视化编程语言-ivx官网

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/120857.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Jenkins 持续集成:Linux 系统 两台机器互相免密登录

背景知识 我们把public key放在远程系统合适的位置,然后从本地开始进行ssh连接。 此时,远程的sshd会产生一个随机数并用我们产生的public key进行加密后发给本地,本地会用private key进行解密并把这个随机数发回给远程系统。 最后&#xf…

猜拳游戏小程序源码 大转盘积分游戏小程序源码 积分游戏小程序源码

简介: 猜拳游戏大转盘积分游戏小程序前端模板源码,一共五个静态页面,首页、任务列表、大转盘和猜拳等五个页面 图片:

泛微OA流程表单中代码块获取URL的参数

获取URL的参数 需要编辑自定义函数 function getUrlParam(key){var url decodeURI(window.location.href);var paramMap {};var paramStr url.split("?")[2];if (paramStr && paramStr ! "") {var paramStrArr paramStr.split("&&qu…

Java on VS Code 8月更新|反编译器用户体验优化、新 Maven 项目工作流、代码高亮稳定性提升

作者:Nick Zhu 排版:Alan Wang 大家好,欢迎来到 Visual Studio Code for Java 的 8 月更新!在这篇博客中,我们将为您提供有关反编译器支持的更多改进。此外,我们将展示如何创建没有原型的 Maven 项目以及一…

数据结构前言

一、什么是数据结构? 数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。 上面是百度百科的定义,通俗的来讲数据结构就是数据元素集合与数据元素集合或者数据元素与数据元素之间的组成形式。 举个…

Web安全——信息收集下篇

Web安全 一、网络空间搜索引擎二、扫描敏感目录/文件1、御剑2、7kbstorm3、bbscan4、dirmap5、dirsearch6、gobuster7、网站文件 三、扫描网页备份四、网站头信息收集五、敏感文件搜索1、GitHub搜索2、Google-hacking3、wooyun漏洞库4、网盘搜索5、社工库6、网站注册信息7、js敏…

【C++进阶(四)】STL大法--list深度剖析list迭代器问题探讨

💓博主CSDN主页:杭电码农-NEO💓   ⏩专栏分类:C从入门到精通⏪   🚚代码仓库:NEO的学习日记🚚   🌹关注我🫵带你学习C   🔝🔝 链表list 1. 前言2. list的使用2.1 list的构造函…

通过 Keycloak 结合 OAuth2.0协议进行 Amazon API Gateway 鉴权

1. 简介 本文介绍了如何通过 Keycloak,并结合 Amazon API Gateway 内置的授权功能,完成对 Amazon 资源请求的鉴权过程。API Gateway 帮助开发者安全的的创建、发布、维护并管理 API 的访问。在中国区,由于Cognito 仍未上线,因此使…

Groovy 下载安装

Groovy 简介 在某种程度上,Groovy 可以被视为Java 的一种脚本化改良版,Groovy 也是运行在 JVM 上,它可以很好地与 Java 代码及其相关库进行交互操作。它是一种成熟的面向对象编程语言,既可以面向对象编程,又可以用作纯粹的脚本语…

【python零基础入门学习】python基础篇之文件对象open、模块以及函数的使用(三)

本站以分享各种运维经验和运维所需要的技能为主 《python》:python零基础入门学习 《shell》:shell学习 《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战 《k8》暂未更新 《docker学习》暂未更新 《ceph学习》ceph日常问题解…

leetcode 922. 按奇偶排序数组 II

2023.9.4 本题较为简单&#xff0c;构造一个和nums相同大小的数组ans&#xff0c;然后遍历判断nums中的元素&#xff0c;若为奇数则放在ans中的奇数索引位置&#xff0c;偶数则放在ans中的偶数索引位置。 代码如下&#xff1a; class Solution { public:vector<int> sor…

智能安全帽~生命体征检测与危险气体检测一体化集成设计还是蓝牙无线外挂式方式好?

生命体征&#xff08;心率、血氧等&#xff09;检测&上报平台&#xff0c;危险气体采集&上报平台&#xff0c;是智能安全帽产品中常见的两种选配件&#xff0c;它们的实现有两种典型的模式&#xff1a; 1&#xff09;将传感器集成到主板上&#xff0c;做成一体化的智能…

三维模型OBJ格式轻量化的数据压缩与性能平衡分析

三维模型OBJ格式轻量化的数据压缩与性能平衡分析 三维模型的OBJ格式轻量化数据压缩在保持性能的同时&#xff0c;可以减小文件大小、提高加载速度和节省存储空间。然而&#xff0c;在进行数据压缩时&#xff0c;需要权衡压缩比率和模型质量之间的关系&#xff0c;并考虑不同应用…

AIGC+思维导图:提升你的学习与工作效率的「神器」

目录 一、产品简介 二、功能介绍 2.1 AI一句话生成思维导图 2.2百万模版免费用 2.3分屏视图&#xff0c;一屏读写 2.4团队空间&#xff0c;多人协作 2.5 云端跨平台化 2.6 免费够用&#xff0c;会员功能更强大 2.7 支持多种格式的导入导出 三、使用教程 3.1 使用AI…

【Linux】高级IO和多路转接 | select/poll/epoll

多路转接和高级IO 咳咳&#xff0c;写的时候出了点问题&#xff0c;标点符号全乱了&#xff08;批量替换了几次&#xff09;&#xff0c;干脆就把全文的逗号和句号都改成英文的了&#xff08;不然代码块里面的代码都是中文标点就跑不动了&#xff09; 1.高级IO 1.1 五种IO模型…

Android逆向学习(番外一)smali2java部分文件无法反编译的bug与修复方法

Android逆向学习&#xff08;番外一&#xff09;smali2java部分文件无法反编译的bug与修复方法 一、前言 昨天我和往常一样准备着android逆向&#xff08;四&#xff09;的博客&#xff0c;结果发现smali2java对某些文件无法进行逆向&#xff0c;我不知道windows会不会产生这…

【数据结构初阶】一. 复杂度讲解

相关代码gitee自取&#xff1a; C语言学习日记: 加油努力 (gitee.com) 接上期&#xff1a; 学C的第三十四天【程序环境和预处理】_高高的胖子的博客-CSDN博客 1 . 算法效率 &#xff08;1&#xff09;. 什么是数据结构&#xff1a; 数据结构(Data Structure)是计算机存储、…

联发科MTK6762/MT6762核心板_安卓主板小尺寸低功耗4G智能模块

MT6762安卓核心板是一款基于MTK平台的高性能智能模块&#xff0c;是一款工业级的产品。该芯片也被称为Helio P22。这款芯片内置了Arm Cortex-A53 CPU&#xff0c;最高可运行于2.0GHz。同时&#xff0c;它还提供灵活的LPDDR3/LPDDR4x内存控制器&#xff0c;此外&#xff0c;Medi…

什么是专线网络?互联网专线为什么贵

宽带主要分为专线和家庭宽带。一般来说&#xff0c;企业服务器和云服务提供商通常使用专线宽带&#xff0c;普通家庭接入家庭宽带。 什么是专线网络&#xff1f; 专线是指依托国内骨干网络和宽带城市网络资源&#xff0c;为企业集团客户提供专线接入方式互联网城市互联网&…

Github 下载指定文件夹(git sparse-checkout)

比如要下载这里的 data_utils 步骤 1、新建空文件夹&#xff0c;并进入新建的空文件夹。 2、git init 初始化 3、git remote add origin 添加远程仓库 4、git config core.sparsecheckout true 允许稀疏检出 5、git sparse-checkout set 设置需要拉取的文件夹&#xff08;可…