通过可视化方式生成可执行代码的系统及方法技术方案

技术编号:36968574 阅读:17 留言:0更新日期:2023-03-22 19:29
本发明专利技术公开了一种通过可视化方式生成可执行代码的系统及方法,所述系统包括可视化拖拽模块,用于提供可被拖拽的多个可视化块,各所述可视化块分别对应一个代码片段,所述可视化块适于被拖拽到预设位置后连接组合成操作流程图;多叉树驱动模块,用于将所述操作流程图转换成结构化的多叉树;代码生成模块,用于将所述结构化的多叉树生成可执行代码。本发明专利技术通过拖拽的方式组合高质量可视化块,可以达到开箱即用的效果,大大提升了使用者的工作效率。率。率。

【技术实现步骤摘要】
通过可视化方式生成可执行代码的系统及方法


[0001]本专利技术涉及一种通过可视化方式生成可执行代码的系统及方法,属于软件工程


技术介绍

[0002]随着互联网技术的发展,越来越多的人有编写代码帮助自己完成特定工作的需求。例如:如果人工整理量大的Excel数据,工作量会非常大,而且很容易出错。但如果借助编写的程序代码自动执行,可以高效地完成数据整理工作,准确率高,大大节省了工作时间。具体来说,如果需要整理一个行业各个品牌的市场占有率数据,需要查阅各个品牌的销售报表,整理规格型号及对应的销售数据等,非常的耗时耗力。如果需要每个月定期整理,就会将大量精力耗费于这件重复性的工作。
[0003]如果按照一定的规则编写成裸机程序代码,只需每个月执行一次代码即可快捷准确地完成这类重复性工作。事实上,凡是业务高频、规则清晰,人工操作重复、量大、时间长的工作,都可以通过编写程序代码的方式自动化执行。但是,写代码往往需要很高的门槛,通常需要两三个月才能写出合格且易维护的代码,前期投入很高。

技术实现思路

[0004]本专利技术的目的是解决上述
技术介绍
中提及的缺陷。
[0005]为实现上述专利技术目的,第一方面,本专利技术提供一种通过可视化方式生成可执行代码的系统,包括可视化拖拽模块,用于提供可被拖拽的多个可视化块,各所述可视化块分别对应一个代码片段,所述可视化块适于被拖拽到预设位置后连接组合成操作流程图;多叉树驱动模块,用于将所述操作流程图转换成结构化的多叉树;代码生成模块,用于将所述结构化的多叉树生成可执行代码。
[0006]进一步地,所述可视化拖拽模块包括可拖拽可视化块和拖拽工作区,所述可拖拽可视化块包括代码片段及适于改变所述代码片段的参数的操作表单,所述拖拽工作区为所述可视化块提供拖拽操作空间及所述操作流程图的组合空间。
[0007]进一步地,所述可视化块包括嵌套类可视化块,所述嵌套类可视化块至少包括条件判断、遍历循环、异常重试和捕获异常四种,其适于形成可嵌套的操作流程图。
[0008]进一步地,所述结构化的多叉树适于映射成双向链表。
[0009]进一步地,所述代码生成模块适于先定义各所述可视化块的代码逻辑元数据和代码生成逻辑,然后在NodeJS虚拟机中对所述结构化的多叉树执行深度优先递归,以获取每个可视化块的元数据,再通过字符串拼接的方式生成可执行代码。
[0010]第二方面,本专利技术提供一种通过可视化方式生成可执行代码的方法,包括以下步骤:
[0011](1)将执行具体功能的代码片段封装成可视化块,形成若干具有不同功能的可被拖拽的可视化块;(2)拖拽至少一个所述可视化块至预设位置,连接组合成操作流程图;(3)
将所述操作流程图转换成结构化的多叉树;(4)将所述结构化的多叉树生成可执行代码。
[0012]进一步地,为步骤(1)中所述可视化块提供拖拽工作区,所述拖拽工作区为所述可视化块提供拖拽操作空间及所述操作流程图的组合空间。
[0013]进一步地,步骤(1)中所述可视化块适于至少提供条件判断、遍历循环、异常重试和捕获异常这四种嵌套功能,以形成可嵌套的操作流程图。
[0014]进一步地,步骤(3)中所述结构化的多叉树适于映射成双向链表。
[0015]进一步地,步骤(4)中所述可执行代码的生成过程为:先定义各所述可视化块的代码逻辑元数据和代码生成逻辑,然后在NodeJS虚拟机中对所述结构化的多叉树执行深度优先递归,以获取每个可视化块的元数据,再通过字符串拼接的方式生成可执行代码。
[0016]与现有技术相比,本专利技术的有益效果为:
[0017]1.通过拖拽的方式组合高质量可视化块,可以达到开箱即用的效果,大大提升了使用者的工作效率。
[0018]2.无需手写代码,能以可视化方式生成可执行代码,通过执行代码帮助人们完成工作任务的自动化操作。
[0019]3.维护成本低,不需要使用者有编程基础即可维护。
附图说明
[0020]图1是本专利技术系统一个实施例的原理框图;
[0021]图2是本专利技术方法一个实施例的流程图;
[0022]图3是本专利技术系统/A方法一个实施例中可视化块的拖拽操作界面图;
[0023]图4是本专利技术系统/A方法一个实施例中嵌套类可视化块的界面图;。
具体实施方式
[0024]下面结合附图和具体实施例,对本专利技术的技术方案做进一步说明。
[0025]如图1所示,本专利技术通过可视化方式生成可执行代码的系统的一个实施例,包括包括可视化拖拽模块,用于提供可被拖拽的多个可视化块,各所述可视化块分别对应一个代码片段,所述可视化块适于被拖拽到预设位置后连接组合成操作流程图;多叉树驱动模块,用于将所述操作流程图转换成结构化的多叉树;代码生成模块,用于将所述结构化的多叉树生成可执行代码。图1中的返回箭头表示可视化拖拽模块和多叉树驱动模块是互相映射的,可以互相转换。
[0026]在一个实施例中,所述可视化拖拽模块包括可拖拽可视化块和拖拽工作区,所述可拖拽可视化块包括代码片段及适于改变所述代码片段的参数的操作表单,所述拖拽工作区为所述可视化块提供拖拽操作空间及所述操作流程图的组合空间。可视化块如:浏览器相关可视化块、桌面应用相关可视化块、网络相关可视化块、文件处理相关可视化块,通过鼠标单击拖拽,即可将相关可视化块拖动到拖拽工作区;再松开鼠标,可视化块会自动落到离它最近的连接处,这样就能形成一个可以运行流程图。这里属于边界检测,在拖拽过程中检测是否可以放落在最靠近鼠标的一个已有可视化块,如果满足基本逻辑要求,就可以放下。举个例子,“打开网页”需要有个前置操作是“打开浏览器”,换句话说,只要有“打开浏览器”的可视化块存在,那么后续才可以放落“打开网页”可视化块,如图3所示。
[0027]在一个实施例中,所述可视化块包括嵌套类可视化块,所述嵌套类可视化块至少包括条件判断、遍历循环、异常重试和捕获异常四种,其适于形成可嵌套的操作流程图。如果仅仅是链表形式的单层流程图,那么这样生成的代码将大大受限,因为它无法处理类似嵌套或者条件判断的场景。所以本专利技术的实施例中会提供两种可视化类型,第一种是普通可视化块,第二种是嵌套可视化块。如,类似条件判断、遍历循环、异常重试、捕获异常这样的可视化块就是可嵌套的,它们充当了类似容器的角色,内部可以包含别的可视化块,这样就可实现可嵌套流程图,如图4所示。
[0028]在一个实施例中,所述结构化的多叉树适于映射成双向链表。
[0029]在一个实施例中,所述代码生成模块适于先定义各所述可视化块的代码逻辑元数据和代码生成逻辑,然后在NodeJS虚拟机中对所述结构化的多叉树执行深度优先递归,以获取每个可视化块的元数据,再通过字符串拼接的方式生成可执行代码。
[0030]如图2所示,本专利技术通过可视化方式生成可执行代码的方法的一个实施例,步骤如下:(1)将执行具体功能的代码片段封装成可视化块,形成若干具有不同功能的可被拖拽的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种通过可视化方式生成可执行代码的系统,其特征在于,包括:可视化拖拽模块,用于提供可被拖拽的多个可视化块,各所述可视化块分别对应一个代码片段,所述可视化块适于被拖拽到预设位置后连接组合成操作流程图;多叉树驱动模块,用于将所述操作流程图转换成结构化的多叉树;代码生成模块,用于将所述结构化的多叉树生成可执行代码。2.根据权利要求1所述的通过可视化方式生成可执行代码的系统,其特征在于,所述可视化拖拽模块包括可拖拽可视化块和拖拽工作区,所述可拖拽可视化块包括代码片段及适于改变所述代码片段的参数的操作表单,所述拖拽工作区为所述可视化块提供拖拽操作空间及所述操作流程图的组合空间。3.根据权利要求1或2所述的通过可视化方式生成可执行代码的系统,其特征在于,所述可视化块包括嵌套类可视化块,所述嵌套类可视化块至少包括条件判断、遍历循环、异常重试和捕获异常四种,其适于形成可嵌套的操作流程图。4.根据权利要求1所述的通过可视化方式生成可执行代码的系统,其特征在于,所述结构化的多叉树适于映射成双向链表。5.根据权利要求1所述的通过可视化方式生成可执行代码的系统,其特征在于,所述代码生成模块适于先定义各所述可视化块的代码逻辑元数据和代码生成逻辑,然后在NodeJS虚拟机中对所述结构化的多叉树执行深度优先递归,以获取每个可视化块的元数据,再通过字符...

【专利技术属性】
技术研发人员:王力国王玉略金克纪达麒陈运文
申请(专利权)人:达而观数据成都有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1