国内刊号:11-2560/TP
国际刊号:1000-9825
发布日期:
作者:李重,施超煊,潘敏学,张天,王林章,李宣东
单位:李重,计算机软件新技术全国重点实验室(南京大学), 江苏 南京 210023;南京大学 软件学院, 江苏 南京 21009311,施超煊,计算机软件新技术全国重点实验室(南京大学), 江苏 南京 210023;南京大学 计算机学院, 江苏 南京 21002302,潘敏学,计算机软件新技术全国重点实验室(南京大学), 江苏 南京 210023;南京大学 软件学院, 江苏 南京 21009303,张天,计算机软件新技术全国重点实验室(南京大学), 江苏 南京 210023;南京大学 计算机学院, 江苏 南京 21002304,王林章,计算机软件新技术全国重点实验室(南京大学), 江苏 南京 210023;南京大学 计算机学院, 江苏 南京 21002305,李宣东,计算机软件新技术全国重点实验室(南京大学), 江苏 南京 210023;南京大学 计算机学院, 江苏 南京 21002306
关键词:代码注释生成;语义重排序模型;对比学习
基金:国家自然科学基金(62402214, 62372227, 62232014); 江苏省自然科学基金(BK20241194)
代码注释是对源代码功能的自然语言描述, 其可以帮助开发人员快速地理解代码语义及功能, 从而提高软件开发和维护的效率. 然而, 书写与维护代码注释费时费力, 导致代码注释经常出现缺失、不匹配以及过时等问题. 因此, 如何自动化地为源代码生成注释引起了大量研究人员的关注. 现有方法通常利用信息检索技术或深度学习技术来进行代码注释自动生成, 但这二者均存在自身的一些局限. 目前已有一些对信息检索技术和深度学习技术进行集成的研究工作, 但它们无法有效利用这两种技术优势. 针对这些问题, 提出一种基于语义重排序的代码注释生成方法SRBCS, 该方法通过语义重排序模型对不同方法所生成代码注释进行排序选择来实现代码注释生成, 从而在实现对不同方法集成的同时最大化地利用不同方法在代码注释生成上的优势. 在两个数据集上将SRBCS与14种代码注释生成方法进行比较. 实验评估结果表明SRBCS可以有效地对不同代码注释生成方法进行集成, 实现了优于现有14种代码注释生成方法的性能.
来源:2026年第2期
《软件学报》期刊编辑部