编程积木的生成方法、装置、电子设备及可读存储介质与流程

文档序号:35931682发布日期:2023-11-05 07:45阅读:42来源:国知局
编程积木的生成方法、装置、电子设备及可读存储介质与流程

本技术涉及图形化编程,具体而言,本技术涉及一种编程积木的生成方法、装置、电子设备及计算机可读存储介质。


背景技术:

1、近年来,随着计算机技术的迅速发展,人们对于编程教育也越来越重视,面向编程初学者的图形化编程工具被越来越多的用户使用。此类图形化编程工具将javascript接口封装在图形化的编程积木中,用户通过搭建编程积木的方式即可完成编程;此类图形化编程工具通常具有运行环境简单、标准化程度高、易于分享传播等优势。

2、在目前已有的图形化编程工具中的各个目标编程积木是通过人工转换方式生成的,人工转换方式有两种。第一种是技术人员人工分析各个javascript接口(分析接口的作用、类型等),基于分析结果手动编辑各个javascript接口对应的编程积木的各个配置项和代码,得到各个目标编程积木;另一种是基于分析结果拖拽google提供的基础编程积木,将基础积木进行组合、定义得到各个javascript接口对应的目标编程积木。

3、javascript接口是由基础编程库提供的,随着图形化编程工具接入的基础编程库越来越多,需要转换的接口越多,通过人工转换方式会耗费大量的人力资源。此外,一些情况下,为了提高研发效率,在生成目标编程积木的过程中,研发人员通常会采用复制、粘贴等手段,这些手段很容易导致部分参数未修改,进而导致很多意外错误,且难以对意外错误进行定位。因此,通过人工转换方式生成javascript接口对应的目标编程积木耗时、耗资源且容易出错。


技术实现思路

1、本技术实施例提供了一种编程积木的生成方法、装置、电子设备、计算机可读存储介质及计算机程序产品,可以解决背景技术中的问题。所述技术方案如下:

2、根据本技术实施例的第一方面,提供了一种编程积木的生成方法,编程积木用于指示图形化编程所需的接口函数,该方法包括:获取包含待处理接口的代码信息的目标代码信息;

3、对目标代码信息进行分词,根据分词结果确定待处理接口的接口函数类型以及目标抽象语法树;目标抽象语法树的非根节点表征分词结果中的一个分词以及分词在目标代码信息中的属性;

4、根据接口函数类型确定待处理接口的积木转换规则以及多个模板配置文件;积木转换规则用于指示目标抽象树中各个节点对应的字段信息;

5、遍历目标抽象语法树,对于抽象语法树中的每个节点,基于积木转换规则将节点转换为对应的字段信息,并将字段信息填充至多个模板配置文件中与字段信息对应的模板配置文件;

6、将对应填充各节点对应的字段信息后的所有模板配置文件输入预设图形化编程工具,得到待处理接口对应的目标编程积木,目标编程积木与待处理接口的接口函数相关。

7、根据本技术实施例的第二方面,提供了一种编程积木的生成装置,编程积木用于指示图形化编程所需的接口函数,该装置包括:

8、目标代码信息获取模块,用于获取包含待处理接口的代码信息的目标代码信息;

9、处理模块,用于对目标代码信息进行分词,根据分词结果确定待处理接口的接口函数类型以及目标抽象语法树;目标抽象语法树的非根节点表征分词结果中的一个分词以及分词在目标代码信息中的属性;

10、确定模块,用于根据接口函数类型确定待处理接口的积木转换规则以及多个模板配置文件;积木转换规则用于指示目标抽象树中各个节点对应的字段信息;

11、转换模块,用于遍历抽象语法树,对于抽象语法树中的每个节点,基于积木转换规则将节点转换为对应的字段信息,并将字段信息填充至多个模板配置文件中与节点对应的模板配置文件;

12、目标编程积木生成模块,用于将对应填充各节点对应的字段信息后的所有模板配置文件输入预设图形化编程工具,得到待处理接口对应的目标编程积木,目标积木与待处理接口的接口函数相关。

13、在一个可能的实现方式中,分词结果包括至少一个分词以及每个分词的数据类型;处理模块包括:

14、语法分析子模块,用于根据每个分词的数据类型,对所有分词进行语法分析处理,得到语法分析结果;语法分析结果包括接口函数类型以及每个分词在目标代码信息中的属性;

15、节点确定子模块,用于对于每个分词,将分词以及分词在目标代码信息中的属性作为候选抽象语法树的一个非根节点,候选抽象语法树的根节点表征所述接口函数类型;

16、目标抽象语法得到子模块,用于从候选抽象语法树中删除冗余信息,得到目标抽象语法树。

17、在一个可能的实现方式中,属性包括分词所在语句的语句类型;

18、冗余信息包括以下至少一种:

19、表征标点符号的节点;

20、叶子节点中的分词在所在语句的语句类型。

21、在一个可能的实现方式中,待处理接口的代码信息中包括注释信息,注释信息中包括接口种类;

22、目标代码信息获取模块,包括:

23、积木种类确定子模块,用于根据接口种类确定待处理接口对应的目标编程积木的积木种类,积木种类和待处理接口的接口种类相同;

24、目标颜色确定子模块,用于根据预先建立的积木种类和颜色之间的关联关系,获得目标编程积木对应的目标颜色,将目标颜色作为一个注释信息合并至待处理接口的代码信息,得到目标代码信息。

25、在一个可能的实现方式中,该装置还包括:

26、积木展示模块,用于在图形化编程工具的菜单栏展示目标编程积木和目标编程积木的积木种类,目标编程积木中展示有待处理接口的接口函数,目标编程积木的颜色为目标颜色。

27、在一个可能的实现方式中,注释信息中还包括接口功能描述;

28、该装置还包括:

29、积木提示信息展示模块,用于响应于光标移动至菜单栏中的目标编程积木,在目标编程积木上方显示目标编程积木的积木提示信息,积木提示信息为注释信息中的接口功能描述。

30、在一个可能的实现方式中,接口函数类型为函数调用类型、变量获取类型、表达式判断类型以及函数声明类型中的任意一种;函数声明类型对应的编程积木和函数调用类型对应的编程积木的形状之间具有嵌套关系;任意两个函数调用类型对应的编程积木的形状之间具有嵌套关系;任意两个函数声明类型对应的编程积木的形状之间具有嵌套关系;函数调用类型对应的编程积木和变量获取类型对应的编程积木的形状在图层上存在上下层关系;表达式判断类型对应的编程积木和函数声明类型对应的编程积木的形状在图层上存在上下层关系。

31、根据本技术实施例的第三方面,提供了一种电子设备,该电子设备包括存储器、处理器及存储在存储器上的计算机程序,处理器执行程序时实现如第一方面所提供的方法的步骤。

32、根据本技术实施例的第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所提供的方法的步骤。

33、根据本技术实施例的第五方面,提供了一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中,当计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行实现如第一方面所提供的方法的步骤。

34、本技术实施例提供的技术方案带来的有益效果是:本技术实施例目标代码信息中包括待处理接口的接口信息,构建该目标代码信息对应的目标抽象语法树,遍历该目标抽象语法树,实现以树的结构展示该目标代码信息,能够精确、全面挖掘该目标代码信息中的代码结构和逻辑,在遍历目标抽象语法树中的过程中,可基于积木转换规则将各个节点转换为对应的字段信息,并将各个字段信息填充至多个模板配置文件中与字段信息对应的模板配置文件,将对应填充各节点对应的字段信息后的所有模板配置文件输入预设图形化编程工具,即可得到待处理接口对应的目标编程积木,整个过程可通过程序自动化处理,一方面减少复制、粘贴的操作,规避研发人员无意中的遗漏和出错问题,另一方面无需技术人员一一分析各个待处理接口的处理逻辑,减少技术人员在接口分析和转换所消耗的时间,能够加快程序开发效率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1