中文

推荐 API 函数调用与代码片段以支持软件开发

软件工程 2021-02-16 v1

摘要

在组件、数据源与任务的异质性指导下,软件开发活动已达到很高的复杂度。开源软件(OSS)仓库的激增强化了对可用软件制品高效重用的需求。为此,有必要探索从软件仓库中挖掘数据并加以利用以产生有用推荐的方法。我们设计并实现了 FOCUS 作为一种新方法,在开发者编程时为其提供 API 调用与源代码。该系统基于上下文感知协同过滤技术从 OSS 项目中提取 API 用法。在本文中,我们通过在包含 2600 个移动应用的数据集上评估 FOCUS,展示了其对 Android 编程的适用性。实证评估结果表明,我们的方法在预测精度上优于两种最先进的 API 推荐器 UP-Miner 和 PAM。我们还指出,Google Play 中定义的应用类别与其 API 用法之间无显著关系。最后,我们展示了用户研究的参与者对 FOCUS 推荐的 API 与源代码在当前开发上下文中的相关性给予了正面评价。

关键词

引用

@article{arxiv.2102.07508,
  title  = {Recommending API Function Calls and Code Snippets to Support Software Development},
  author = {Phuong T. Nguyen and Juri Di Rocco and Claudio Di Sipio and Davide Di Ruscio and Massimiliano Di Penta},
  journal= {arXiv preprint arXiv:2102.07508},
  year   = {2021}
}

备注

20 pages, 11 figures, accepted for publication at IEEE Transactions on Software Engineering (TSE)