API Recommendation for Novice Programmers: Build a Bridge of Query-Task Knowledge Gap

计算机科学 桥(图论) 任务(项目管理) 情报检索 软件工程 系统工程 工程类 医学 内科学
作者
Yong Wang,Yingtao Fang,Cuiyun Gao,L Chen
出处
期刊:IEEE Transactions on Reliability [Institute of Electrical and Electronics Engineers]
卷期号:73 (3): 1473-1486
标识
DOI:10.1109/tr.2024.3361922
摘要

During software development, programmers often rely on a wide range of application programming interfaces (APIs) to facilitate their tasks. However, APIs have been growing rapidly in recent years, making it difficult for developers to choose among the many APIs that suit their programming needs. To facilitate the development process, automatic API recommendation is becoming increasingly important. Although there have been many effective research methods, these methods have a high dependence on the accuracy of the user's description of his own task, and there is a knowledge difference between the user's query and the user's actual task, increasing the difficulty of accurate API recommendation. In this article, we propose REAPI, a method to bridge the knowledge gap between the user's query and the user's actual task to improve the recommendation accuracy. The REAPI approach involves reconstructing query by tapping into Stack Overflow data to glean user intentions. Refactoring the user's query to display implicit information can better capture the user's true intentions. Specifically, we generate three candidate reconstruction statements based on natural language queries and Stack Overflow data and incorporate user feedback to refine and select the final statement. To evaluate the effectiveness of REAPI, we conducted experiments at both the class-level and method-level. Our results show that REAPI outperforms state-of-the-art baselines across key evaluation metrics such as S@1, S@3, S@10, MRR, and MAP.

科研通智能强力驱动
Strongly Powered by AbleSci AI
科研通是完全免费的文献互助平台,具备全网最快的应助速度,最高的求助完成率。 对每一个文献求助,科研通都将尽心尽力,给求助人一个满意的交代。
实时播报
星冰乐发布了新的文献求助10
1秒前
1秒前
大个应助Sunny-simit采纳,获得10
1秒前
2秒前
2秒前
2秒前
3秒前
wanci应助imlaoji采纳,获得10
3秒前
cyh完成签到,获得积分10
3秒前
3秒前
外向的绿蝶关注了科研通微信公众号
5秒前
我是老大应助阿比盖尔采纳,获得10
5秒前
5秒前
姜姜发布了新的文献求助10
6秒前
7秒前
四菇娘完成签到 ,获得积分10
7秒前
7秒前
7秒前
太渊完成签到 ,获得积分10
8秒前
Dong完成签到 ,获得积分10
8秒前
sasaki完成签到,获得积分10
8秒前
顾矜应助thelime采纳,获得10
8秒前
rgu发布了新的文献求助10
9秒前
9秒前
绝活中投完成签到 ,获得积分10
9秒前
duxinyue应助sam采纳,获得10
9秒前
完美世界应助sam采纳,获得10
10秒前
heisebeileimao应助闲尾采纳,获得50
10秒前
烟花应助sam采纳,获得30
10秒前
优雅的小海豚完成签到,获得积分10
10秒前
Dean完成签到,获得积分0
11秒前
蓝天发布了新的文献求助10
11秒前
11秒前
11秒前
12秒前
12秒前
12秒前
12秒前
12秒前
在水一方应助清研采纳,获得10
13秒前
高分求助中
(应助此贴封号)【重要!!请各用户(尤其是新用户)详细阅读】【科研通的精品贴汇总】 10000
Kinesiophobia : a new view of chronic pain behavior 3000
Les Mantodea de guyane 2500
Molecular Biology of Cancer: Mechanisms, Targets, and Therapeutics 2000
Signals, Systems, and Signal Processing 510
Discrete-Time Signals and Systems 510
Brittle Fracture in Welded Ships 500
热门求助领域 (近24小时)
化学 材料科学 生物 医学 工程类 计算机科学 有机化学 物理 生物化学 纳米技术 复合材料 内科学 化学工程 人工智能 催化作用 遗传学 数学 基因 量子力学 物理化学
热门帖子
关注 科研通微信公众号,转发送积分 5945550
求助须知:如何正确求助?哪些是违规求助? 7100091
关于积分的说明 15900288
捐赠科研通 5077787
什么是DOI,文献DOI怎么找? 2730494
邀请新用户注册赠送积分活动 1690559
关于科研通互助平台的介绍 1614637