iVX和其它低代码的平台的区别,“低代码/无代码”分三类

news2025/1/9 5:14:16

前言

在这里插入图片描述

这个图非常认真地对整个“低代码”领域做了严格的分类,这个里面并没有把只针对工作流或单纯BI的工具产品划分进去,主要是这一类,在我个人理解里面更像“SaaS++”,也就是增强版SaaS产品,这类产品也主要是给业务人员使用的。

严格意义上讲,低代码可以分为 “通用代码生成型”“企业内部应用开发框架型” ,这两个名字虽然复杂,但是基本概括比较到位。

“通用代码生成型” ,主要就是涵盖”前端/后台/数据库代码生成“,做得比较好的,前后端数据库都做了,做得比较专的,可能只专注其中一部分,我上面表里面的多数是国外的公司,主要是做“通用代码生成”的国内公司确实比较少。

这类产品特点:往往不止是2B,还可以2C,价格和模式上也更加自由,有些甚至免费。

要做通用的编程产品,哪怕只是做前端都是非常困难的,涉及到几乎所有技术,从最底层编译器到最上层框架语言都需要。所以,往往这方面的产品现阶段还需要大量代码,国外的老外产品也不例外,另外功能和性能(运行效率上)也往往打了很多折扣,还有一些由于研发年头久,还采用一些很老旧的框架。

“企业内部应用开发框架型” ,这个就是国内大部分公司专注的类型了,这种类型通常提供了一些“应用引擎”以及“模型”,企业内的开发者使用这些提供的资源开发“框架内”的应用。然后在设定“环境内”运行。

在这里插入图片描述

这类产品特点也很明显:好处就是提供了一些方便的配置和接口,一些最基础的能力已经具备;但是缺点也很明显,东西只能在自家环境下跑,就算做得最出色的两家“mendix”和“outsystems”导出的文件“mpk和osp”也只能在自己环境下导入导出,PowerApps则只能在Azure下运行,APEX只能在Oracle下跑。所以造成了“技术框架”、“运行环境”等多处锁定。

剩下就是今天要说的 iVX 了,这个比较特别,它可以作为第三类“低代码/无代码”平台

它将代码生成做到了极致,代码生成率大于95%,大家注意,不是那种功能堆叠,是很高效的IDE操作自动生成代码,平均一次有效操作生成500行以上代码;而且平台上有很多大型应用的实例,含多家上市公司核心平台 shop.ivx.cn ;不锁定,前端生成的代码可以直接在VUE/react中使用,后台可以直接导出Java和Node代码。开发者甚至可以完全抛弃iVX平台直接二次开发。(当然还是建议接着用,效率高)

那结论就很明确了吧~如果大家用过,或者去调研一下 doc.ivx.cn ,会发现“其它都是其它”。

下面我们来了解一下这个与众不同的代码/无代码”平台——iVX,最后为大家分析一下它的不同体现在哪里:

一、iVX——首个通用无代码开发平台

iVX对其定义是 “通用无代码开发平台”。这与该平台的目标是相一致的:一个浏览器端的IDE(整合开发环境);尽可能无代码并能支持全场景应用的开发;尽可能一次开发支持多套系统运营;并且对云和应用导出部署有良好的支持。

1️⃣通用

几乎适合所有的应用开发场景和支持在所有操作系统中运行。

  • 支持的操作系统:浏览器WebApp、Android/iOS、小程序、小游戏、钉钉、Win/Mac/Linux、也支持最新的国产鸿蒙。
  • 支持的开发场景:支持中大型复杂应用(基于无代码的逻辑编排引擎),电商、大数据应用、表单、工作流、Bi、任务流、OA系统、工业物联网、游戏、网站、视频应用、IM等等。

但其实也是有一些限制条件的:

  • 一般不建议用iVX来直接实现大型算法(建议封装之后在iVX内部调用);
  • 不支持操作系统级软件的开发,例如杀毒软件(iVX主体是基于Web开发环境);
  • 大型3D的MMORPG多人在线游戏开发(一般采用专业游戏开发引擎制作)。

2️⃣无代码

iVX提供了“原子级”组件系统,支持用户“自定义组件”,并且配合图灵完备的“逻辑编辑引擎/面板”,就可以实现几乎所有应用的前后台“无代码”开发。

3️⃣开发平台(应用可移植特性)

iVX所开发的应用,都可以脱离iVX独立部署。也就是说,对于开发者而言,iVX就是一个“代码生成器”。和手写代码无差别,可以脱离iVX平台任意部署,而大多数其它“低代码”平台不具备这种“开发平台”属性,只能在平台内部使用。

4️⃣首个

我们还未发现国内外有类似的平台出现,现阶段做的最好的Mendix/ Outsystems等也只能称做“低代码”开发平台(还做不到“复杂逻辑的无代码表达”);而国内很多产品,由于不具备生成可导出部署独立应用的能力,还不能算作“开发平台”。

二、iVX的三大属性和两大能力

在这里插入图片描述

1️⃣iVX的语言属性

语言属性:iVX几乎就是一款“可视化的编程语言”,并通过“原子组件”+“逻辑编排”,生成中间代码,中间代码最终被iVX编译器,编译成“前端JS代码”和“后台代码”。现阶段,后台代码只支持JavaScript(Node或Deno中运行),后期会支持生成Java、Python、C#等代码。同时,iVX也具备编程语言的开放性,虽然iVX可以实现“无代码编程”,但是为了广大现有程序员的需要,iVX支持“嵌入自定义函数”“自定义SQL代码”“自定义CSS代码”等代码插入功能。

另外,这种语言还是“前后一体”,以及全中文的。“前后一体”的语言设计使得程序员在学习iVX后,具有更大的使用维度,不会再收到前后台开发语言不一致的限制,过渡也更加容易。而“全中文”则代表大部分文档和资料都会以“中文”形式存在,为“英文不太好”的广大中国开发者提供了更多的可能和更快速的学习环境。

2️⃣iVX的云属性(云原生)

云属性:iVX实现了“应用程序”和“运行资源”的分离;也就是iVX只帮用户生成可高效运行的程序代码,而将程序所需的后台资源(各种DB、函数计算、对象存储、CDN等)和程序本身分离,也就是说如果iVX生成程序放到AWS云上,那就使用AWS的资源,各种并发和计算能力依赖于AWS的能力,同理,如果放到阿里云上,则依赖阿里云自身的能力,当然用户也可以放在自己的机房中进行独立部署,这个时候后端并发能力,则依赖于用户自身的机房设备环境。

3️⃣iVX的工具属性

工具属性:iVX自带IDE(整合开发环境),开发这登录网页之后,直接进行项目的“开发”、“调试”、“发布”、“测试”、“运维”、“二次开发”等操作,也就是说直接在一个页面完成“应用的全生命周期”管理,最大限度缩短开发和运维流程,从产品上实现“DevOps”。并且,直接生成可导出的前后台代码,开发者不用担心会被平台绑定。

并且整个开发过程,也仅在一个界面中完成。包括:“应用开发”>>>“应用调试”>>>“应用发布”>>>“二次开发(运维)”。

4️⃣代码生成能力

对于一些写惯了代码的程序员来说,可以直接就把iVX作为一款“代码生成器”。无论是前端还是后台代码,iVX都可以编译后快速生成。过程中,iVX会先生成AST抽象语法树,然后再根据AST生成对应的代码。如果是其它应用(例如微信小程序),会编译成对应的微信小程序原生代码。

注意,虽然iVX可以导出类似Javascript这样的代码,但是非常不建议开发者直接去修改这个代码本身,因为一旦修改之后,就再也无法导入到iVX的IDE系统进行二次开发了。

5️⃣“图灵完备”的逻辑能力

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

在这里插入图片描述

优势主要表现在“对于分支逻辑的完备表达和可读性冲突的问题的解决上”。

在这里插入图片描述

对于复杂的逻辑,首先就具有分支复杂度的不可预测性,因此,就可能造成如上图这样的情况,而“复杂度的不可预测”和“逻辑可读性”之间本身就存在冲突,而这种冲突通过“流程图的方式”很难得到解决。实际上,这也是为什么Mendix/Outsystems称作“低代码”开发平台的原因,因为复杂的业务逻辑,通常还是需要通过代码来解决。

三、iVX相比传统编程方式有哪些优势

首先,我想申明的是“iVX和国内的低代码平台其实关系不大”!

iVX确实是“无代码”,可以说iVX是一个平台,但iVX的核心特征还是“语言属性”以及“云原生”属性。因此iVX是编程本身方式上的创新,是程序员对编程自身的革命!

为了大家方便理解,我把iVX相对于传统编程方式的优势概括为以下“四快”:

1️⃣快速学习

iVX可以把编程的学习周期从几年缩短到两三个月!如果是程序员背景学习iVX可能周期会更短,一两周就可以快速切换上手。以上数据是根据平台真实培训结果得出的平均数据,甚至有一些设计师、文科专业毕业生也可以快速学习和掌握iVX开发。

逻辑上其实很简单,因为iVX没有任何语法需要学习,图形化的操作使整个开发步骤也大大简化,因此iVX学习者只需要从逻辑和具体功能(或架构)入手,就可以完成开发。

2️⃣快速开发

在这里插入图片描述

根据用户熟练程度和使用规模,iVX可以数倍提升开发效率,往往以前10个人干3个月的工作,使用iVX后,现在3个人不到一个月就能完成。

3️⃣快速运行

这一点得益于iVX的核心CORE部分,包括编译和语法生成翻译,以及内部各种核心算法,都是真正的“大神级程序员”实现的(不方便透露其名字)。因此,开发者使用iVX开发的时候,就相当于获得了这位“大神”的加持,因此生成的代码质量也能得到保障。

4️⃣快速维护

iVX本身的结构化和本身极简的开发流程,保证了尽可能低的“系统维护”和“二次开发”成本。

前端部分所见即所得,即选即改;加上清晰的“可视化”日志系统,结构化的“动作组”“小模块”,使得整个应用可读性很强,逻辑梳理较为容易。

四、iVX能开发哪些应用

iVX是一款高速发展的无代码可视化编程语言,现在已经可以完整覆盖几乎所有操作系统应用的开发,包括:

  • WebApp(通过Web浏览器封装,可以支持各种小程序,Android/iOS App,Win/Mac/Linux App)
  • 原生微信小程序(iVX专门针对微信小程序,单独制作所有相关组件)
  • 原生微信小游戏(iVX专门针对微信小游戏,单独制作所有相关组件)

通过iVX工作台,进入开发的IDE界面,如下图所示:

在这里插入图片描述

每一种类型的应用的基本开发模式是一致的,但有着不同的组件集与基本配置设定。因此,应用一旦创建后,就不能改变应用类型,我们需要在开发之前,决定需要创建的应用类型。

1️⃣webApp/小程序/原生应用

此类型的应用,以下简称为“web App”, 本质即网页应用,可以发布为纯的网页应用(即html5网页),或通过ivx平台提供的打包服务,打包为各种小程序(目前支持微信、支付宝、钉钉)以及原生应用(ios、android以及windows/mac)。无论是小程序,还是原生应用,ivx平台的打包服务都是通过webview(浏览器嵌入)的方法,将我们制作的页面嵌入至其他应用中。同时,ivx提供了各种系统接口层,可以让我们在应用中调用小程序或原生应用提供的接口,比如,地理位置,设备接口,文件接口等等。

在创建web App时,我们可以选择相对定位的舞台或绝对定位的舞台:

在这里插入图片描述

其中,相对定位的舞台,舞台和页面默认为相对定位环境,即流式布局;绝对定位的舞台,舞台和页面默认为绝对定位环境,即由用户手动指定每个对象的位置。如果您熟悉iH5平台,则可以选择绝对定位环境,其体验和iH5平台完全一致。

无论是绝对定位还是相对定位的舞台,默认创建时,窗口大小都为 375*667, 即手机窗口大小。我们可以通过工具栏右上角的窗口大小切换按钮,来将项目调整为PC或pad大小,来制作相应场景的应用:

在这里插入图片描述

2️⃣微信小游戏

微信小游戏是小程序平台新推出的一种小程序的特别类型。(在申请小程序时,需要将类型申请为游戏类,方可上传小游戏)

小游戏可以选择2D或3D类型,2D类型的小游戏,其内部是一个纯画布环境,3D类型的小游戏,其内部是一个3D世界。由于微信小游戏的小游戏根必须指定一种环境类型,因此我们只能创建纯2D或纯3D的小游戏,无法嵌套。

在这里插入图片描述

小游戏除了可以上传至微信平台,也可以直接发布为网页应用,在浏览器中打开与传播:

在这里插入图片描述

3️⃣微信小程序(原生组件)

微信小程序(原生组件),是一种特有的微信小程序类型。其中组件使用了小程序提供的原生组件,以及在此基础上扩展的组件。此种类型的小程序和第一种web App版本的小程序各有优势,我们可以根据自己的需求来选择需要制作的小程序类型。两种微信小程序的区别,我们将在下一节中详细展开。

原生组件的微信小程序,和微信小游戏类似,也可以直接上传至小程序平台,或直接发布为网页应用(H5):

在这里插入图片描述
当前,由于新版(v41版本)ivx编辑器的升级版数据逻辑处理机制和此类型微信小程序暂时不兼容,因此,此类型的小程序,依旧将使用旧版(v40)版ivx编辑器。待新版做了兼容后,将再行替换。

iVX的覆盖面如此之广,感兴趣的小伙伴快来试试吧:www.ivx.cn

五、iVX和其它低代码的区别

iVX,作为一种编译型低代码平台,目标为解决通⽤问题;而接⼝型低代码平台(others)目标为解决领域内问题,它们之间主要区别如下:

1️⃣产品的思路不同

编译型(iVX)解决通⽤问题;接⼝型(others)解决领域内问题。

在这里插入图片描述

编译型产品iVX会更加底层 iVX也可以开发类似Bi引擎、⼯作流、表单类产品,⽹站上可以找到(如下):

在这里插入图片描述

这个通过iVX开发的Bi引擎还可以⾃定义echart组件 。

2️⃣⽤户不同

iVX⽤户就是程序员或者统称为开发者(⾮业务⼈员);接⼝型的⽤户就是“业务⼈员”,满⾜不了,再给程序员开发 。

简单说就是:接⼝型,提供的就是⼀款可以接着开发的SaaS产品或平台;⽽编译型,则是⼀个完整的开发体系。

在这里插入图片描述

3️⃣学习价值不同

iVX是⼀种新的编程语⾔,学习价值较⾼;接⼝型产品,只能在该产
品框架内组装,⽽且同类型产品众多。

在这里插入图片描述

4️⃣应⽤范围不同

编译型能够开发更⼴领域;接⼝型,主要⽤于开发“企业内部流程管理系
统”。

在这里插入图片描述

5️⃣有⽆框架限制

编译型可以和任何系统和框架对接,也包括接⼝型地代码产品;接⼝型,
只能在⾃家产品框架下进⾏扩展,和别家不兼容。

在这里插入图片描述

接⼝型低代码框架是排他的,只能在框架内部扩展。

总体⽽⾔,当然,如果是业务同学,接⼝类就可以直接使⽤,会⽐较⽅便;如果是开发同学,我还是建议学习第⼀类“编译型”产品,价值更⼤⼀些。两种做法⽆优劣,只是解决问题不同。


后记

iVX试图提供一个最短的应用最佳实践路径,而且采用最简单的方式,连代码过程都给省去了…

我们认为人类智慧中最可宝贵的是“逻辑能力和其迸射出的创造性”,这些能力在编程过程中都得以展现。iVX能够“保留程序逻辑,去掉程序语法”,这将会使得有更多的人掌握编程这项技能!

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringCloud学习-实用篇04

以下内容的代码可见:SpringCloud_learn/day04 1.初始MQ 同步通讯和异步通讯 微服务间通讯有同步和异步两种方式,同步通讯就像打电话需要实时响应,异步通讯就像发邮件不需要马上回复。两种方式各有优劣,比如打电话能立即得到响应&a…

STM8使用pwm接口调试GDS06灰尘传感器

背景 刚好有项目使用GDS06这款传感器,这里简单做个记录。 GDS06接口如下,这里支持串口和PWM的输出到MCU,由于项目采用STM8S003F3P6,资源极其有限。 所以硬件设计的时候,就考虑采用PWM的接口方式,这样只是…

安科瑞有源电力滤波器的设计原理及应用前景

安科瑞 徐浩竣 江苏安科瑞电器制造有限公司 zx acrelxhj 摘要:该文介绍了有源电力滤波器的工作原理和基本控制方法,并阐述有源电力滤波器的现状及发展前景等等。 关键词:有源电力滤波器;谐波;工作原理;…

方案绞尽脑汁想不出?试试这款AI代写方案

一份计划方案,往往是工作进行下去的核心环节,需要考虑很多因素和变量,在某些情况下,可能没有足够的信息来制定有效的方案。这可能会导致需要额外的研究和调查,以便了解更多关于问题的信息,这将延长制定方案…

侧边拖拉功能

一、页面 <div class"resize-handle" mousedown"startResizing">⋮</div> 二、js data() {return {showSideBar: true,leftPaneWidth: 63, // 左侧区域的初始宽度isResizing: false, // 标记是否正在调整大小startX: 0, // 调整大小开始时的…

Spring AOP 中的切点是什么?如何定义切点?

Spring AOP 中的切点是什么&#xff1f;如何定义切点&#xff1f; 什么是切点&#xff1f; 在 Spring AOP 中&#xff0c;切点&#xff08;Pointcut&#xff09;是指一组连接点&#xff08;Join Point&#xff09;的集合。连接点是程序执行过程中的某个特定点&#xff0c;例如…

初识SpringMVC -- SpringMVC入门保姆级教程(一)

文章目录 前言一、初识SpringMVC1.认识SpringMVC2.SpringMVC入门案例3.SpringMVC开发的一般步骤4.入门案例涉及的知识点5.入门案例工作流程 总结 前言 为了巩固所学的知识&#xff0c;作者尝试着开始发布一些学习笔记类的博客&#xff0c;方便日后回顾。当然&#xff0c;如果能…

阿里云服务器端口怎么打开?详细教程一步步

阿里云服务器端口怎么打开&#xff1f;云服务器ECS端口在安全组中开启&#xff0c;轻量应用服务器端口在防火墙中打开&#xff0c;新手站长以开通80端口为例来详细说下阿里云服务器端口开放图文教程&#xff0c;其他的端口如8080、3306、443、1433也是同样的方法进行开启端口&a…

双轮云台小车实现追踪彩色目标功能

1. 功能说明 在R216a样机上安装一个摄像头&#xff0c;本文示例将实现双轮小车通过二自由度云台自主寻找彩色目标的功能。 2. 结构说明 R216a样机主要是由一个 双轮小车 和一个 2自由度云台 组合而成。 3. 电子硬件 在这个示例中&#xff0c;我们采用了以下硬件&#xff0c;请大…

CRM系统软件不好用有哪些原因?如何选择?

CRM系统的实施也会出现无法落地使用的情况&#xff0c;让CRM系统软件名存实亡。这不仅仅只是个例&#xff0c;很多企业即使投入了很大成本&#xff0c;也不能让CRM系统真正用起来。CRM系统软件用不起来&#xff0c;可以排查这三个原因&#xff0c;教你解决&#xff01; 1.操作…

简单粗暴实现el-input只允许输入数字

<el-input input"phoneNumberphoneNumber.replace(/[^0-9.]/g,)" v-model"phoneNumber" maxlength"11" > </el-input> 如果加入type"number"&#xff0c;会在输入框右侧出现这个恶心的东西 尽管可以使用样式来屏蔽掉 …

基于ArcGIS Pro、Python、USLE、R、INVEST模型等多技术融合的生态系统服务构建生态安全格局

目录 基于ArcGIS Pro、Python、USLE、INVEST模型等多技术融合的生态系统服务构建生态安全格局 第一章 生态安全评价理论及方法介绍 第二章 平台基础 第三章 数据获取与清洗 第四章 基于USLE模型的土壤侵蚀评价 第五章 基于风蚀修正模型的防风固沙功能评估 第六章 水源涵…

联想集团财报:收入持续下滑,联想集团财务前景已恶化

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 联想集团2023财年第三季度财务业绩回顾 联想集团&#xff08;00992&#xff09;于2023年2月16日盘后公布了该公司2023财年第三季度的财报。 财报显示&#xff0c;联想集团的收入已经从2022财年第三季度的201.27亿美元下降到…

西门子PLC如何实现1主多从网口无线通讯

常规来说&#xff0c;多台plc要实现以太网无线连接&#xff0c;首先要先确定以太网线必须正确连接&#xff0c;并建立物理连接。然后需要在PLC端设置好IP地址&#xff0c;以使不同PLC以相同协议可以实现通信交流。最后是建立PLC端数据采集及交换系统&#xff0c;要求在PLC端设置…

一篇必读的物联网平台物模型开发指南,为你解锁未来科技趋势

《高并发系统实战派》-- 值得拥有 文章目录 一、什么是物模型&#xff1f;二、为什么要设计物模型&#xff1f;三、如何设计物模型&#xff1f;设备属性的设计设备服务的设计设备事件的设计 四、物模型案例五、不设计物模型会有什么影响&#xff1f;六、总结 设计物模型可以使物…

热烈欢迎CSDN副总裁邹欣老师入驻知识星球

重磅消息 CSDN 副总裁 邹欣 老师成功入驻知识星球 —— 英雄算法联盟&#xff0c;成为合伙人之一。 这将是未来几年内&#xff0c;IT界最震撼的一次合作&#xff01;我相信就算现在不是&#xff0c;将来必定是&#xff01; 当然&#xff0c;这对我来说也是一种极大的鼓舞&#…

C语言实现“队列“

&#x1f388;个人主页:&#x1f388; :✨✨✨初阶牛✨✨✨ &#x1f43b;推荐专栏: &#x1f354;&#x1f35f;&#x1f32f;C语言进阶 &#x1f511;个人信条: &#x1f335;知行合一 &#x1f349;本篇简介:>:分享数据结构之C语言实现"队列".各个接口分别分析…

回归预测 | MATLAB实现SSA-DELM和DELM麻雀算法优化深度极限学习机多输入单输出回归预测对比

回归预测 | MATLAB实现SSA-DELM和DELM麻雀算法优化深度极限学习机多输入单输出回归预测对比 目录 回归预测 | MATLAB实现SSA-DELM和DELM麻雀算法优化深度极限学习机多输入单输出回归预测对比效果一览基本介绍模型描述程序设计参考资料 效果一览 基本介绍 Matlab实现SSA-DELM和D…

突破极限:YOLO9000 论文解读 - 构建更好、更快、更强大的实时检测系统

YOLOv2 论文全篇完整翻译 摘要 我们介绍了YOLO9000&#xff0c;这是一种先进的、实时的目标检测系统&#xff0c;可以检测超过9000个物体类别。首先&#xff0c;我们对YOLO检测方法进行了各种改进&#xff0c;包括新颖的方法和借鉴自先前工作的方法。改进后的模型YOLOv2在标准…

港科夜闻|叶玉如校长在大湾区科学论坛主论坛发表「为应对人口老龄化贡献大湾区力量」主旨演讲...

关注并星标 每周阅读港科夜闻 建立新视野 开启新思维 1、叶玉如校长在大湾区科学论坛主论坛发表「为应对人口老龄化贡献大湾区力量」主旨演讲。她指出&#xff0c;中国已成为世界上老年人口最多、老龄化速度最快的国家之一&#xff0c;预计到2025年&#xff0c;65岁及以上人口3…