Android API推荐技术的研究

来源 :上海交通大学 | 被引量 : 0次 | 上传用户:regelus
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着软件开发技术的不断发展,软件的功能需求也在不断充实与进步,不仅在数量和种类上更加丰富,而且在实现的细节上也越来越复杂。为了提高开发者的开发效率,许多软件库被开发出来以帮助开发者实现重复或相似的功能。伴随这个趋势,软件开发变得更依赖于现成的软件库,开发者们经常会使用各种搜索引擎和工具来寻找能够实现其功能需求的软件库以及库提供的API。为了帮助开发者更快的找到符合开发需要的API,研究者们进行了很多探索来向开发者推荐相关的库和API,以满足功能上的实现需求。然而,很少有研究关注在Android等事件驱动的开发框架下的开发过程中的一个特殊需求,即事件回调API的推荐需求。通过实证研究,在Android应用的开发过程中,开发者不仅需要知道调用哪些功能性的API来实现特定的功能,还需要知道将实现功能的功能性代码放在哪些事件回调函数或方法中,这些回调类型的API由开发者重写,并且会在特定事件触发时自动被Android框架调用。虽然研究者们为了推荐用来实现程序功能的功能性API做了很多努力与探索,但是很少有研究考虑到Android等事件驱动开发框架中对于事件回调型API的推荐需求。为了进一步说明以及满足这一需求,本文提出一个针对Android开发的API推荐引擎,它既能推荐开发者为了实现特定功能而调用的功能性API,也能推荐由开发者重写并在事件触发时执行功能性代码的事件回调API。本文工作的主要内容是构建特定领域内的API描述数据库,数据库内的数据展现了不同功能点与不同的功能性API以及事件回调API之间的对应关系。本文以Android官方的开发者教程以及Android SDK参考文档为数据源,通过对代码片段的领域特定分析技术以及对文本的自然语言处理技术从数据源资料中挖掘API描述信息来构建数据库。然后,本文通过比较基于TF-IDF值的文本相似度的方法来推荐相关的API。本文使用从Stack Overflow网站上收集的1500多个与Android开发相关的问题来对推荐引擎原型进行实验与评估。本文首先通过370个随机选取的问题组成测试数据集对实验关于数据库选择、查询文本处理方式设置的不同选项进行了测试与验证,从而选出最优配置选项,进而使用最优配置在1500多个问题组成的大型数据集上对本文提出的方法进行实验评估。实验结果表明,在Android等事件驱动的开发中,向用户推荐事件回调型API是可行的,而且本文提出的推荐引擎原型在推荐功能性API和事件回调API方面都能取得富有前景的效果。
其他文献
<正>各级官员被记者们围住"逼访",已成为每年两会的一道风景。刚刚落幕的今年两会,与往年相比,中国官员们的整体表现更加谦恭、自信。人民大会堂北门是部长们的必经之地面对"
非线性振动理论是非线性科学的一个重要研究内容,对于弱非线性常微分方程控制的动力系统已经有了许多求近似解的方法,如多尺度法、KBM法、平均法等等。近年来,人们对强非线性问
表面活性剂在日用化学领域内的应用十分广泛。近年来,表面活性剂的安全性、温和性以及对环境的影响越来越收到人们的重视。氨基酸型表面活性剂具有生物降解性和生态相容性,越
<正>"仁爱"思想可以说是儒家思想的核心与灵魂。在五四打倒孔家店,有人称儒家思想在现代中国是"游魂"的情况下,今天谈论"仁家"思想还有意义么?我们在今天谈论的"仁爱"思想与
会议
<正>亚洲鼩鼹(Talpidae:Uropsilus)孑遗分布于中国西南山地及紧邻的缅甸北部山区,是鼹科中最原始的类群。该类群经历了漫长的演化历史,但保守的分类特征始终困扰着学界对其系
会议
目的:为临床减少急腹症误诊的发生提供借鉴。方法 通过回顾我院近5年来以急性阑尾炎收入院的病例,找出出院诊断为其他急腹症的病例23例,分析总结其误诊原因。结果 误诊病例为:,妇
<正>中岛敦(1909 ~1942年)是现代日本文坛上很具有个性的一位作家。他出身在一个几代都是汉学家的家系中 。祖父中岛庆太郎号抚山,是江户时代著名汉学家龟田鹏斋门下的学者。
会议
当前我国国有商业银行实行混业经营是否具有可行性,需要分析实行混业经营的外部环境和内部环境,比较实行混业经营的成本与收益,从而做出综合性的评估.