一种有效的API搜索算法
本文关键词:一种有效的API搜索算法
【摘要】:近年来程序库日趋复杂。当面对不熟悉的开发领域或者功能模块时,开发者通常需要借助搜索引擎或者查阅API文档的方式来选择合适的API来进行开发。然而传统搜索引擎的搜索结果过于碎片化以及API文档中检索的不便使得这一过程十分耗时。本文提出一种新的搜索算法,并根据该算法实现一个API搜索工具APIBook。APIBook能够根据用户对API功能的自然语言描述,结合软件库中API的语义信息、类型信息和调用情况,向用户推荐相关的API,并且给出API调用的代码示例。实验表明APIBook在API搜索上比传统的检索模型更加有效。
【作者单位】: 上海交通大学软件学院;上海交通大学计算机科学与工程系;
【关键词】: 应用编程接口 信息检索 代码推荐 程序分析
【基金】:国家自然科学基金资助项目(61572313)
【分类号】:TP391.3
【正文快照】: 0引言软件代码的重用是软件开发过程的重要组成部分,其对提高开发效率和软件质量具有积极作用[1-3]。随着互联网与软件产业的发展,程序库变得日趋复杂。目前仅JDK8的基础类库中就包含超过140000个类和方法。研究表明,API的选择是编程学习中面临的六大困难之一[4]。搜索引擎是
【相似文献】
中国期刊全文数据库 前10条
1 颜宏,杨学胜,皇甫雪官;大型应用程序分析系统简介[J];应用气象学报;1992年S1期
2 蒋金山;SCO XENIX DAEMON程序分析与编程[J];电脑与信息技术;1995年05期
3 刘宗田;姜川;;程序分析的专家模型与方法学[J];计算机科学;1996年06期
4 任春德;陈平;彭安斋;;程序分析中的设计模式应用[J];微电子学与计算机;2006年11期
5 刘磊,袁琦,金成植;基于信息流分析的程序分析技术[J];计算机研究与发展;1997年S1期
6 胡燕京;张健;罗海宁;王伟;;程序分析技术研究及其在补丁分析中的应用[J];现代电子技术;2007年17期
7 杨雪梅;五个古老问题的程序分析[J];商洛师专学报;1997年02期
8 郑瑶海;陈伟;赵琛;;基于中间表示的可复用程序分析系统[J];计算机工程;2007年09期
9 郝杰;;一种程序切片的图示构造方法[J];大众科技;2011年01期
10 李必信,郑国梁,王云峰,李宣东;一种分析和理解程序的方法──程序切片[J];计算机研究与发展;2000年03期
中国重要会议论文全文数据库 前2条
1 李征;赵瑞莲;;基于领域的程序切片准则的依赖性分析[A];第五届中国测试学术会议论文集[C];2008年
2 梁睿;刘林霞;张自强;;基于运行时验证的AOP程序检测框架[A];全国第20届计算机技术与应用学术会议(CACIS·2009)暨全国第1届安全关键技术与应用学术会议论文集(下册)[C];2009年
中国博士学位论文全文数据库 前5条
1 连瑞琦;具有可适应性的程序分析技术[D];中国科学院研究生院(计算技术研究所);2000年
2 涂明君;程序化的哲学阐释[D];中国人民大学;2008年
3 章程;基于机器学习和程序分析相结合的程序调试技术研究[D];上海交通大学;2013年
4 凌翔;需求模型和程序间行为一致性的比较检测[D];武汉大学;2013年
5 王甜甜;结构语义相似的程序识别方法研究[D];哈尔滨工业大学;2009年
中国硕士学位论文全文数据库 前10条
1 李广强;基于转换的程序分析技术的研究与应用[D];广东工业大学;2007年
2 张若愚;静态程序分析辅助的动态漏洞挖掘[D];上海交通大学;2010年
3 姚信林;程序作业的等价测评技术的研究[D];广东工业大学;2012年
4 孙鹤;基于搜索的程序切片方法及其应用[D];哈尔滨工业大学;2009年
5 李学博;基于UML的工艺程序分析系统的分析与设计[D];山东大学;2006年
6 吕斯亮;PL/1语言的程序分析系统[D];吉林大学;2008年
7 吴永军;C++程序动态切片系统的研究与实现[D];南京航空航天大学;2008年
8 张志天;一个程序验证工具的设计和实现[D];中国科学技术大学;2011年
9 潘海燕;一种JAVA语言的程序分片技术[D];吉林大学;2004年
10 石帅华;基于JavaEE的COBOL程序分析系统设计与实现[D];中国科学院大学(工程管理与信息技术学院);2015年
,本文编号:576297
本文链接:https://www.wllwen.com/kejilunwen/sousuoyinqinglunwen/576297.html