代码注入方法和装置、电子设备及存储介质制造方法及图纸

技术编号:24167621 阅读:55 留言:0更新日期:2020-05-16 01:56
本申请提供的代码注入方法和装置、电子设备及存储介质,涉及程序开发技术领域。在本申请中,首先,基于预先配置的代码预处理器对第一程序代码进行预处理,并基于预处理的结果生成语法树对象。其次,基于语法树对象确定位置信息和生成第二程序代码,其中,该位置信息用于标识该第二程序代码需要注入至第一程序代码的位置。然后,基于位置信息将第二程序代码注入至第一程序代码。通过上述方法,可以改善在现有的程序开发过程中由于需要开发人员对第一程序代码和第二程序代码一并进行开发而存在开发效率低的问题。

Code injection method and device, electronic equipment and storage medium

【技术实现步骤摘要】
代码注入方法和装置、电子设备及存储介质
本申请涉及程序开发
,具体而言,涉及一种代码注入方法和装置、电子设备及存储介质。
技术介绍
在程序开发技术中,横切关注点是指,与主要功能的实现无关的次要功能。例如,针对一段虚拟按钮程序,可以设置一个横切关注点,以统计用户的点击该程序对应的按钮的次数。经专利技术人研究发现,在现有的程序开发过程中,开发人员一般是将主要功能对应的程序代码和横切关注点对应的程序代码一并进行开发,因而,存在着开发效率低的问题。
技术实现思路
有鉴于此,本申请的目的在于提供一种代码注入方法和装置、电子设备及存储介质,以改善在现有的程序开发过程中由于需要开发人员对第一程序代码和第二程序代码一并进行开发而存在开发效率低的问题。为实现上述目的,本申请实施例采用如下技术方案:一种代码注入方法,包括:基于预先配置的代码预处理器对第一程序代码进行预处理,并基于预处理的结果生成语法树对象;基于所述语法树对象确定位置信息和生成第二程序代码,其中,该位置信息用于标识该第二程序代码需要注本文档来自技高网...

【技术保护点】
1.一种代码注入方法,其特征在于,包括:/n基于预先配置的代码预处理器对第一程序代码进行预处理,并基于预处理的结果生成语法树对象;/n基于所述语法树对象确定位置信息和生成第二程序代码,其中,该位置信息用于标识该第二程序代码需要注入至所述第一程序代码的位置;/n基于所述位置信息将所述第二程序代码注入至所述第一程序代码。/n

【技术特征摘要】
1.一种代码注入方法,其特征在于,包括:
基于预先配置的代码预处理器对第一程序代码进行预处理,并基于预处理的结果生成语法树对象;
基于所述语法树对象确定位置信息和生成第二程序代码,其中,该位置信息用于标识该第二程序代码需要注入至所述第一程序代码的位置;
基于所述位置信息将所述第二程序代码注入至所述第一程序代码。


2.根据权利要求1所述的代码注入方法,其特征在于,所述基于预先配置的代码预处理器对第一程序代码进行预处理,并基于预处理的结果生成语法树对象的步骤,包括:
基于对注解处理器的继承操作配置生成代码预处理器;
基于所述代码预处理器对第一程序代码进行预处理生成目标文件,并基于该目标文件生成语法树对象。


3.根据权利要求2所述的代码注入方法,其特征在于,所述基于该目标文件生成语法树对象的步骤,包括:
对所述目标文件中的初始化方法进行处理,得到所述第一程序代码的环境对象,并基于该环境对象生成语法树对象。


4.根据权利要求1-3任意一项所述的代码注入方法,其特征在于,所述基于所述语法树对象确定位置信息和生成第二程序代码的步骤,包括:
从所述第一程序代码包括的至少一个注解中确定目标注解,并基于所述语法树对象生成语法树节点操作对象和语法树构建对象;
基于所述目标注解和所述语法树节点操作对象确定位置信息;
基于所述目标注解和所述语法树构建对象生成第二程序代码。


5.根据权利要求4所述的代码注入方法,其特征在于,所述从所述第一程序代码包括的至少一个注解中确定目标注解的步骤,包括:
对目标文件中的注解获取方法进行...

【专利技术属性】
技术研发人员:林寿耿
申请(专利权)人:广州虎牙科技有限公司
类型:发明
国别省市:广东;44

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

1