
-
生物通官微
陪你抓住生命科技
跳动的脉搏
通过基于上下文的深度代码表示来增强标识符重命名机会的识别
《IEEE Transactions on Reliability》:Boosting Identifier Renaming Opportunity Identification via Context-Based Deep Code Representation
【字体: 大 中 小 】 时间:2025年11月20日 来源:IEEE Transactions on Reliability 5.7
编辑推荐:
代码重命名是软件重构的核心环节,现有方法仅针对特定类型标识符。本文提出结合上下文感知的Siamese网络模型,通过多注意力机制融合编程上下文与相关代码实体,构建语义嵌入向量并训练分类器,实现跨类型标识符重命名机会的自动检测。实验表明,在Apache社区10个Java项目共29255个标识符上的测试,较基线方法平均F1分数提升11.97%,其中引入相关代码实体策略使F1提升6.60%。
源代码重构是开发者经常进行的一项重要的软件开发活动[1]、[2]、[3]、[4],其目的是在不改变外部行为(包括性能、可维护性、可扩展性和安全性[5])的情况下重构源代码。源代码重构可以为正在开发的软件带来很多好处,例如降低未来出现故障的可能性,简化新功能的实现,并减少升级和支持成本[6]、[7]。源代码重构可以在不同的层次上进行,从软件架构重构、类关系重建到代码实体重命名。在这些不同层次的源代码重构中,代码实体重命名是最常见的,因为它相对容易操作且引入故障的风险较低。研究人员进行了相关统计,发现标识符占代码实体的近70%,而其他类型的代码实体(如运算符和保留字)很少被重命名(因为它们具有固定的功能)[8]、[9],因此标识符重命名受到了开发者和研究人员的广泛关注。
生物通微信公众号
知名企业招聘