生鱼又叫什么鱼| 肝s4钙化灶是什么意思| 1975年五行属什么| other是什么品牌| 血氨高会导致什么后果| 舌头臭是什么原因| 为什么做梦会说梦话| 鸡属于什么科| 熟地黄是什么| 产妇月子里可以吃什么水果| 二丁颗粒主要治什么病| 海尔洗衣机e3是什么故障| 尿道炎什么症状| 血管瘤是什么引起的| 风包念什么| 小肚子大是什么原因| 什么蛋白质含量高| 飞的第一笔是什么| 一什么桥| 快乐源泉是什么意思| 手机为什么没信号| 王火火念什么| 女人物质是什么意思| 楚楚欲动是什么意思| 分泌性中耳炎吃什么药| 桂附地黄丸治什么病| 咪咪头疼是什么原因| 寸脉弱是什么原因| 8月24日是什么星座| 为什么蚊子咬了会起包| 什么是感光食物| 爬是什么结构| 阳明病是什么意思| 闹心是什么原因导致的| 幸福是什么的经典语录| 微尘是什么意思| logo是什么| 女人出轨有什么表现| 温居是什么意思| 劳模是什么意思| 本座是什么意思| 姨妈是什么| 梦见前夫是什么兆头| 小孩为什么经常流鼻血| 一度房室传导阻滞是什么意思| 268数字代表什么意思| ttm是什么意思| 扁平足有什么危害| 肝肾亏虚吃什么药| 鞘膜积液挂什么科| 胰岛素是什么| 一个月一个泉是什么字| 小孩肚脐眼上面疼是什么原因| 荔枝肉是什么菜系| 6d是什么意思| 1921年中国发生了什么| 宫高是什么意思| 血常规可以查出什么病| 身上有红色的小红点是什么原因| 出道是什么意思| 宫外孕做什么手术| 2002年是什么年| 枸杞什么时候吃最好| 手麻脚麻是什么原因引起的| 乙型肝炎表面抗体高是什么意思| 老人家头晕是什么原因| 什么奶粉比较好| 最大的动物是什么| 骨髓不造血是什么病| 绿茶妹是什么意思| 子宫肌瘤是什么病严重吗| 宝宝肤专家软膏主要治什么| 嗜睡是什么病的前兆| 尿肌酐高是什么原因引起的| 梦见包被偷了什么预兆| 小龙虾和什么不能一起吃| 杏干泡水喝有什么功效| 补锌吃什么药| 喝苦荞茶对身体有什么好处| 子宫形态不规则是什么意思| 军衔是什么意思| 经常咳嗽是什么病| 梦见枕头是什么意思| pass掉是什么意思| 脸肿挂什么科| 跖疣念什么字| 红豆和赤小豆有什么区别| 女性做B超挂什么科| 产品批号什么意思| 鸡飞狗跳是什么意思| 韩束适合什么年龄段的人用| 尾牙宴是什么意思| 容易饿是什么原因| 湿疹什么样| 夏天为什么会下冰雹| 丝状疣是什么样子图片| 感统失调挂什么科| 史努比是什么意思| tvoc是什么意思| 预拌粉是什么东西| 斯密达什么意思| 苏菲是什么意思| 蚊子喜欢什么气味| 刻薄什么意思| 厉兵秣马是什么意思| cc是什么| 屁股痛挂什么科| 血小板低是什么问题| 大姨父是什么意思| 人参适合什么人吃| 破瓜年华是什么意思| kiko是什么意思| 西瓜有什么好处| 吃什么东西补肾| 三点是什么时辰| 大乔叫什么| 女为悦己者容是什么意思| 血浓度高是什么原因| 净空是什么意思| 三叉神经痛吃什么药效果最好| 白敬亭原名叫什么| 客家是什么意思| 霉菌是什么| 美业是什么行业| 世界上最大的山是什么山| 高血压吃什么好| 3680是什么罩杯| 血糖高是什么原因造成的| 生物酶是什么东西| 世袭制是什么意思| 三奇贵人是什么意思| 皮肤一碰就破是什么病| 42年属什么生肖| 什么是焦距| 猛吸气胸口疼什么原因| 心魔是什么意思| 容易长口腔溃疡是什么原因| 孩子总爱哭是什么原因| 什么的风儿| hsv1是什么病毒| 手指关节肿胀是什么原因| 早上6点是什么时辰| 白佛言是什么意思| 什么叫hp感染| 轰趴是什么意思| 249是什么意思| 泞字五行属什么| 女人喜欢什么样的男人| 你叫什么名字英语怎么说| 大将是什么级别| 宫腔积液是什么| launch什么意思| 什么水果是发物| 穿什么颜色衣服显白| 优甲乐什么时候吃最好| 种植牙为什么那么贵| 什么药和酒一起吃必死| 心机是什么意思啊| 耳洞为什么会发臭| 农历11月14日是什么星座| 各位同仁用在什么场合| 鸽子和什么炖气血双补| 肚脐眼下方是什么器官| 战国时期是什么时候| 口角炎用什么药膏| 翠玉是什么玉| 血热吃什么好| 麻梨疙瘩是什么树| 女人梦到蛇预示着什么| 女儿红是什么酒| 被老鼠咬了打什么疫苗| 七月二号是什么日子| 脾胃有火是什么症状| 高血压适合吃什么水果| 尿液带血什么原因| 脚浮肿吃什么药| 骑驴找马是什么意思| 小苏打是什么成分| 肝肿瘤吃什么食物好| 86年属什么的| 情感是什么意思| 钝感力什么意思| 爆血管是什么原因引起的| 贝加台念什么| 什么是红斑狼疮病| 金字旁加者念什么| 釜底抽薪什么意思| 压差小是什么原因引起的| 再接再厉后面接什么好| 腺肌症是什么症状| 一什么不什么四字成语| 地蛋是什么| 丝瓜络有什么作用| 皮肌炎是什么症状| 木林森是什么品牌| 甲沟炎属于什么科| 一个大一个小念什么| 维生素b吃多了有什么副作用| 孕妇梦见大蟒蛇是什么意思| 阴道息肉长什么样| 梦到孩子丢了是什么征兆| 十一月二十是什么星座| 早餐吃什么不升血糖| 黄疸是什么| 鼠妇是什么动物| 冷藏和冷冻有什么区别| 脚面麻木是什么原因| 韭菜籽配什么壮阳最猛| 客观原因是什么意思| 噗呲是什么意思| 先天愚型是什么病| 慢性疾病都包括什么病| 盆腔炎吃什么消炎药| 杏黄是什么颜色| 为什么会睡不着| 孩子咳嗽能吃什么水果| pr医学上是什么意思| 梦见吃核桃是什么意思| 腹部左侧是什么器官| 好吃懒做的动物是什么生肖| 心力衰竭吃什么药最好| 不还信用卡有什么后果| 5月6号是什么星座| 青金石蓝是什么颜色| 胆固醇高是什么意思| 半夜是什么时辰| gg是什么牌子| 吃什么利尿| 银河是什么| 夜开花是什么菜| 七月十日是什么日子| 11月份生日是什么星座| 吃完饭胃疼是什么原因| ep是什么| 8.26是什么星座| 放臭屁吃什么药| 强龙不压地头蛇是什么生肖| 作精是什么意思| 牛男和什么属相最配| 范思哲是什么品牌| 发生什么事了| 心态崩了什么意思| 农历9月17日是什么星座| 3月16号是什么星座的| 发烧一直不退是什么原因| SEX是什么| it是什么意思| 西红柿拌白糖又叫什么| 黄桃什么时候上市| 经常打呼噜是什么原因| 硬度不够吃什么药调理| 狗吃什么食物| 什么是闭合性跌打损伤| 狂蜂浪蝶是什么意思| 早上六点是什么时辰| 九二共识是什么意思| 金牛男喜欢什么类型的女生| 早上起来口苦是什么原因| 吃南瓜子有什么好处| 心肌供血不足用什么药| 既济是什么意思| ot什么意思| 安徽什么阳| 屎壳郎长什么样| 百度

我们为什么要开发iVX?—iVX尝试用“图形化”的方式解决编程的问题

信息化观察网
刘艺
现在无论是前端还是后台,还是云计算,技术迭代的速度都非常快,需要设计一个通用的架构,保证有新技术出现的时候可以快速迭代进来,这点非常重要。
百度 三、以“新居民”集住地为突破点,确保消防宣传无盲区。

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

由于我个人比较喜欢图形化的思维方法,在我学习代码以后,就一直在思考一个问题:有没有另一种实现代码逻辑的方法?这种方式可以“抹平”各种编程语言/框架之间的差异,实现“去掉程序语法,保留程序逻辑”。我们尝试去探索一条“应用开发的最短路径”,这条路经涵盖了从“开发”——“测试”——“上线”——“运维”的全过程,自动生成全栈代码(包括前端/后台/数据库代码),甚至尝试给用户提供“最直观”“一眼就能想到”的编程实现方法。

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

但是,以往的图形化编程方式,或多或少都有一些问题:例如,图形化了一部分UI,核心逻辑无法图形化表达(还是要写大量代码);又例如,一些图形化方案,尝试构造完整的代码逻辑空间,图形化设计过程过于复杂;还有一些框架过于陈旧,并没有实现面向对象的组件设计;还有一些图形化方案本身并不适合表达特别复杂的逻辑,例如Scratch,导致无法实现“通用”的应用开发。

要想做一种新的编程方式(新范式),几乎需要面对所有程序员(开发者)的检验,这是一件非常困难的事情,甚至比设计一门新的代码编程语言更加困难。

设计新的图形化编程语言的主要挑战

一 需要软件工程理论上的创新(编程语言的设计只是很一小部分)

在OOP面向对象理论出现以后,已经过去了好几十年,虽然也有“敏捷开发/精益开发”、“CI/CD持续集成/持续部署”、“DevOps”、“DDD领域驱动设计”等,但在本身的开发范式上并没有太大的创新,都是沿用“代码开发范式”。在我看来,这套范式整个使用路径,随着领域的不断扩展,各种软件产品公司的加入,变得越来越复杂,对于初学者很不友好,已经成为进一步扩大“软件”生产力的“核心”阻力。

以前端为例,以下是网上流传需要掌握的知识图谱:

1.png

前端学习路径图(来自互联网)

这仅仅只是前端需要掌握的知识,后台和运维需要掌握的内容一点也不比前端的少。就光前端开发这一项技能,没有好几年的时间,很难达到一定水平。

如果想要在一个图形化界面里面同时支持“前端开发”+“后台/数据库开发”+“运维”+“软件全生命周期管理”,难度可想而知。

另一方面,这种新的编程方式,相比传统代码编程方式,要能实现以下四个评价关键点中至少三点,才有意义。

这四个评价要点为(相比传统代码编程方式):

(1)更高的学习效率;

(2)更快的开发效率;

(3)更方便的运维;

(4)更快的运行速度;(表现为生成的代码质量)

1.png

iVX的四个评价关键点

二 需要底层技术的创新

首先要保证产品本身的架构的灵活性。现在无论是前端还是后台,还是云计算,技术迭代的速度都非常快,需要设计一个通用的架构,保证有新技术出现的时候可以快速迭代进来,这点非常重要。纵观很多具有IDE(整合开发环境)的产品,就是由于架构比较固化,无法引入新的技术,最终被新产品/新技术淘汰。

其次,图形化编程语言本身的设计以及和现有编程语言的转化,是另外一个难点。图形化编程语言的AST(抽象语法树)如何设计?语义空间(关键字)有多大?如何才能生成流行且大家熟悉使用的编程语言和代码框架?后台数据库以及后台资源如何接入并保证高可用?外部系统例如3D、2D、物理引擎如何接入?如何高效渲染?这些都是很棘手的问题,而且很多问题并没有标准答案,都需要独立创新和研发。

就拿AST(抽象语法树)设计举例,前端的AST和后台显然是不一样的,例如后台需要转码Java,而前端需要转码vue/react/dart等,那Java是直接采用Java原有的AST还是重新设计一种?最终我们选择了重新设计一种AST,用来生成Java AST,再转码Java Code,这个技术目前成功应用于iVX图形化编程IDE中,并且申请了国家专利保护。

1.png

iVX图形化编程IDE

三 需要产品设计方面的创新

当我们2007年开始投入研发的时候,当时也不是这么乐观,估计3~5年可以做出成型的产品,当时想的是可以设计个网站/网站前端就可以了(当然还没有云计算的概念,大家还不知道SaaS是个啥?也没有想着用浏览器来做应用了,所以只有网站的概念。)后来深入进去,发现浏览器原来还可以做很多事儿,接下来的几年浏览器本身升级和迭代速度加快了,互联网连续设计,移动互联网快速加入并成为应用开发的主战场,我们的产品也不得不进一步升级。

这种来自产品快速升级的压迫感,让我们根本就没有办法停下来。支持了动画和广告,你就想支持前端界面开发,支持各种应用开发;支持了前端你就想要支持后台和数据库开发;然后你想要支持云计算,支持微服务和Serverless;然后你想要把编程语言配套设置都加上,IDE、多人开发、版本管理、自定义组件管理...一个都不能少;再然后就是平台化...模版平台、组件平台、交易平台、应用商店纷纷上马...需要做的事情太多太多。几乎是把编程语言几十年建立的大厦和配套设施都要独立靠我们团队去实现一遍,而且很多技术还要自己摸索...

Finally...

我们沿着这条道路探索了十七年(2007年~2023年),iVX就这样诞生了。

1.png

产品很早就在线上可以访问了(2021年~2022年),但我们几乎没有推广和宣传,总是觉得这个产品无论是体验上还是技术框架上,都还有需要调整的地方,因此,我们来来回回重构了7~8次,功能点新增和调整上千次,最终形成了现在的版本——5.0版。总体来说,我们对目前的版本整体上已经比较满意,因此决定推向市场,就目前为止大概有30万注册的开发者,已经通过我们平台开发了近100万个应用了。总体来说,没有什么bug了,而且生成代码性能表现也很出色,大家可以放心使用。

目标30年...

iVX坚持每周迭代,到现在为止,团队构成基本上全员研发(为此,国内税务主管部门多次来查,说我们申报的研发人员比例太高,我告诉他们“我们财务系统都是财务人员自己研发的,现在已经转研发了”)。

底层技术的演进,往往需要更长的时间,但是一旦有所突破,往往也会带来生产力更大的进步。在iVX IDE的基础上,通过AI模型自动编程,是我们研究的新方向。希望通过我们的努力,可以为更多人服务,并创造价值。

THEEND

最新评论(评论仅代表用户观点)

更多
暂无评论
什么的故事 炎是什么意思 地球上什么东西每天要走的距离最远 反胃想吐是什么原因 THENORTHFACE什么牌子
七月一号是什么节 射进去是什么感觉 梦见杀狗是什么预兆 红底白杠是什么标志 沆瀣一气是什么意思
天天喝奶茶有什么危害 醋泡葡萄干有什么功效和作用 style是什么意思 接骨木是什么 89是什么意思
面瘫什么意思 小孩脸上有白斑是什么原因 鼠加句念什么 知了的学名叫什么 核心抗体阳性是什么意思
八五年属什么bfb118.com 心机是什么意思hcv9jop3ns9r.cn 月经期可以吃什么水果hcv9jop1ns8r.cn 长期喝山楂水有什么好处和坏处sanhestory.com 舌尖发麻是什么原因引起的hcv7jop5ns1r.cn
王秋儿和王冬儿什么关系hcv7jop6ns7r.cn 冰箱里有什么细菌hcv9jop1ns5r.cn 鼻中隔偏曲是什么意思hcv9jop8ns0r.cn 头晕耳鸣吃什么药hcv8jop3ns7r.cn 孕妇吃什么蔬菜对胎儿好hcv9jop5ns6r.cn
翻白眼是什么意思hcv8jop3ns5r.cn 德国纳粹是什么意思hcv9jop5ns9r.cn 吃了安宫牛黄丸要禁忌什么不能吃hcv8jop6ns5r.cn 拔牙前需要做什么检查hcv9jop6ns7r.cn 无创dna是检查什么的hcv8jop8ns2r.cn
肾结石吃什么比较好hcv9jop4ns0r.cn newbee什么意思hanqikai.com 色彩斑斓是什么意思hcv9jop4ns4r.cn 血糖高适合喝什么酒hcv8jop0ns6r.cn es什么意思hcv7jop9ns3r.cn
百度