编程积木的生成方法、装置、电子设备及可读存储介质制造方法及图纸

技术编号:39296836 阅读:18 留言:0更新日期:2023-11-07 11:04
本申请实施例提供了一种编程积木的生成方法、装置、电子设备及计算机可读存储介质,涉及图形化编程领域。该方法包括:构建该目标代码信息对应的目标抽象语法树,基于积木转换规则将各个节点转换为对应的字段信息,并将各个字段信息填充至多个模板配置文件中与字段信息对应的模板配置文件,将对应填充各节点对应的字段信息后的所有模板配置文件输入预设图形化编程工具,即可得到待处理接口对应的目标编程积木。本申请实施例以树的结构展示该目标代码信息,能够精确挖掘该目标代码信息中的代码结构和逻辑,无需技术人员一一分析各个待处理接口的处理逻辑,减少技术人员在接口分析和转换所消耗的时间。转换所消耗的时间。转换所消耗的时间。

【技术实现步骤摘要】
编程积木的生成方法、装置、电子设备及可读存储介质


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

技术介绍

[0002]近年来,随着计算机技术的迅速发展,人们对于编程教育也越来越重视,面向编程初学者的图形化编程工具被越来越多的用户使用。此类图形化编程工具将Javascript接口封装在图形化的编程积木中,用户通过搭建编程积木的方式即可完成编程;此类图形化编程工具通常具有运行环境简单、标准化程度高、易于分享传播等优势。
[0003]在目前已有的图形化编程工具中的各个目标编程积木是通过人工转换方式生成的,人工转换方式有两种。第一种是技术人员人工分析各个Javascript接口(分析接口的作用、类型等),基于分析结果手动编辑各个Javascript接口对应的编程积木的各个配置项和代码,得到各个目标编程积木;另一种是基于分析结果拖拽google提供的基础编程积木,将基础积木进行组合、定义得到各个Javascript接口对应的目标编程积木。
[0004]Javas本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种编程积木的生成方法,其特征在于,所述编程积木用于指示图形化编程所需的接口函数,所述方法包括:获取包含待处理接口的代码信息的目标代码信息;对所述目标代码信息进行分词,根据分词结果确定所述待处理接口的接口函数类型以及目标抽象语法树;所述目标抽象语法树的非根节点表征所述分词结果中的一个分词以及所述分词在所述目标代码信息中的属性;根据所述接口函数类型确定所述待处理接口的积木转换规则以及多个模板配置文件;所述积木转换规则用于指示所述目标抽象树中各个节点对应的字段信息;遍历所述目标抽象语法树,对于所述抽象语法树中的每个节点,基于所述积木转换规则将所述节点转换为对应的字段信息,并将所述字段信息填充至所述多个模板配置文件中与所述字段信息对应的模板配置文件;将对应填充各节点对应的字段信息后的所有模板配置文件输入预设图形化编程工具,得到所述待处理接口对应的目标编程积木。2.根据权利要求1所述的方法,其特征在于,所述分词结果包括至少一个分词以及每个分词的数据类型;所述根据分词结果确定所述待处理接口的接口函数类型以及目标抽象语法树,包括:根据每个分词的数据类型,对所有分词进行语法分析处理,得到语法分析结果;所述语法分析结果包括所述接口函数类型以及每个分词在所述目标代码信息中的属性;对于每个分词,将所述分词以及所述分词在所述目标代码信息中的属性作为候选抽象语法树的一个非根节点,所述候选抽象语法树的根节点表征所述接口函数类型;从所述候选抽象语法树中删除冗余信息,得到目标抽象语法树。3.根据权利要求2所述的方法,其特征在于,所述属性包括分词所在语句的语句类型;所述冗余信息包括以下至少一种:表征标点符号的节点;叶子节点中的分词在所在语句的语句类型。4.根据权利要求1所述的方法,其特征在于,所述待处理接口的代码信息中包括注释信息,所述注释信息中包括接口种类;所述获取包含待处理接口的代码信息的目标代码信息,包括:根据所述接口种类确定所述待处理接口对应的目标编程积木的积木种类,所述积木种类和所述待处理接口的接口种类相同;根据预先建立的积木种类和颜色之间的关联关系,获得所述目标编程积木对应的目标颜色,将所述目标颜色作为一个注释信息合并至所述待处理接口的代码信息,得到所述目标代码信息。5.根据权利要求4所述的方法,其特征在于,所述得到所述待处理接口对应的目标积木快,之后还包括:在所述图形化编程工具的菜单栏展示所述目标编程积木和所述目标编程积木的积木种类,所述目标编程积木中展示有所述待处理接口的接口函数,所述目标编程积木的颜色为所述目标颜色。6.根据权利要求5所述的方法,其...

【专利技术属性】
技术研发人员:陈琼雯
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

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

1