基于用户反馈的API推荐工具①
2021-09-10杨忻莹
计算机系统应用 2021年8期
杨忻莹,周 宇,2
1(南京航空航天大学 计算机科学与技术学院,南京 211106)
2(南京航空航天大学 高安全系统的软件开发与验证技术工信部重点实验室,南京 211106)
在软件开发过程中,应用程序接口(API) 发挥了重要作用[1],开发人员可以使用API 更有效地执行编程任务.但是由于API的数量庞大,开发者不可能熟悉所有的API,也不可能始终为特定的开发任务选择合适的API.当遇到不熟悉的编程任务时,开发者往往会通过上网搜索相关功能的案例进行代码复用,或者搜索相关的API 文档,学习相关API的使用方法.能够针对程序员的需求进行合理的API 接口推荐便成为了提高软件开发效率的重要途径之一.为了解决这个问题,国内外大量科研人员已在API 接口推荐领域展开了一系列研究工作,并实现了许多API 推荐方法,以减轻开发人员理解和搜索API的负担.
Thung 等通过将历史特征请求与API 文档信息相结合的方式,进行API 方法推荐[2].BIKER[3]获取Stack Overflow 问答网站上的问答信息和JDK的API 文档信息[4],根据帖子问题与用户查询的相似性推荐API.
这些方法往往基于信息检索技术以及自然语言处理相关技术提取关键字,来缩小目标API的搜索范围、加快推荐效率.然而他们大多均未考虑用户交互信息(例如用户从推荐列表中选择API),这些信息通常被认为能够大大提高API 推荐性能.
针对这一不足之处,有少数工作利用了用户反馈信息.例如,NLP2API[5]利用来自Stack Overflow 网站的问答对来模拟伪用户交互,从而重新制定查询语句,实际上……
登录APP查看全文
