基于类继承关系分析的API推荐技术研究

来源 :东南大学 | 被引量 : 0次 | 上传用户:shuper
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着计算机技术的高速发展,各类软件和应用程序的开发要求和开发难度不断增大,API(Application Programming Interface,应用程序编程接口)推荐技术的研究和应用就具有很大的研究潜力和研究价值。当前软件开发的效率和软件开发的质量很大程度上取决于API方法的推荐结果,它能够快速的给开发人员提供准确的API方法来交付功能丰富的软件,并且在一定程度上保障了方法的实用性,极大的节约了开发人员的时间,提高了项目和软件开发的效率。现有方法在推荐过程中主要关注于从程序的上下文中获取信息,根据代码语言的重复性和可预测性等特性来推荐相关结果,未考虑到方法所属类的继承关系。而属于同一继承关系体系中的所有方法都有可能是解决某一问题的必要操作,这些方法在推荐过程中都应该被视为重要的候选结果。事实上,在实际应用场景中,属于不同类的方法旨在一起使用,以形成丰富的API方法网络,用于解决功能复杂的大型软件问题。但传统的API推荐方法都没有对方法所属类的继承体系中其他方法进行推荐的考虑,导致最终的推荐结果存在准确率不足的问题。针对上述问题,本文提出了一种基于类继承关系分析的API推荐方法,即InhRec。InhRec按类继承的声明顺序,将类和属于该类的方法划分层次结构。推荐对象所属的类称为低层次类,在继承声明顺序中从该类的父类开始直至Object类都称为高层次类。通过对方法按其所属类之间的层次结构关系进行分类,提取属于不同层次方法间的依赖关系信息,并对方法间的依赖信息进行关联关系分析,以确定属于不同层次类的方法间的联系。对于属于高层次类的方法,通过低层次类方法对其的依赖影响,自身方法的历史使用频率,按照其所属类的层次结构,合理提高这类方法的推荐优先级,以消除传统API推荐方法对于高层次类方法推荐不足的影响,从而扩充了API推荐候选池,使得推荐结果的准确率更高。本文选取了106个项目构建评估实验,通过与APIREC、GraLan等四种现有API推荐技术进行对比分析,评估了本文技术的有效性和效率。实验结果表明,对于不同层次方法间存在较强逻辑关系的项目,本文技术在top-5以及top-10的准确率指标方面要比现有的API推荐技术高7%左右。同时,本文技术的API推荐平均执行时间均控制在1s以下,满足实际开发的需求。
其他文献
随着互联网技术不断发展,网络数据资源日益丰富,在给人们生活带来种种便利的同时也衍生了亟待解决的信息安全问题。身份认证是保护网络中用户数据资源的第一道关卡,现有身份管理系统存在着一些不足:(1)身份管理机制标准不统一,组织之间缺少强信任关系,不同应用服务之间不易融合;(2)身份管理依赖于第三方权威中心机构,身份信息易被泄漏、滥用;(3)用户数据访问控制机制不完善,用户对自身数据缺乏自主权,用户数据易
焊接是一项重要的加工技术,被广泛应用于各类生产制造领域。传统生产企业依赖手工焊接,焊接质量取决于工人的技术水平与工作状态,因此焊接效率与质量无法得到保障。相比于手工焊接,自动化焊接具有焊接效率高、焊接质量一致等特点。普及自动化焊接能够提高企业生产效率,保障产品质量并节省用工成本。焊缝跟踪技术是实现焊接控制的重要环节,也是焊接自动化与智能化的必要条件。本文通过对焊缝跟踪技术展开研究,设计并实现了一套
随着互联网技术的快速发展和大数据时代的全面到来,企业级应用中越来越多的应用场景需要在预定的时间点按照指定的时间规则去执行特定的任务,这样的任务就是“定时任务”。业务规模的发展和逻辑复杂度的上升使得定时任务在企业级应用中扮演着越来越重要的角色,但是现有的定时任务调度方案存在着可管理性差、并行处理能力差、任务编排能力差和可用性差等问题。针对以上问题,本文设计并实现了一个基于松耦合架构的分布式定时任务调
近年来,交通事故频发,为了保障出行安全,随着深度学习和计算机技术的发展,自动驾驶技术成为道路交通安全领域的研究热点之一。自动驾驶环境感知以及驾驶场景三维重建仿真对保障自动驾驶安全十分重要,本文围绕这两个任务,展开以下研究:首先构建了二维目标检测及(道路)语义分割融合模型(后简称融合模型)。融合模型包含3个子模块:特征提取模块(残差网络)、二维目标检测模块和(道路)语义分割模块。针对融合模型提出了“
随着计算机图形技术的快速发展,三维室内模型在室内设计行业得到了广泛应用,设计师只需在室内设计软件中简单地拖拽和替换三维室内模型就能高效地对室内空间进行设计和修改,大幅提高了设计效率,降低了设计成本。目前大多数室内设计软件都提供了大量的三维室内模型供用户挑选,然而用户在挑选模型的过程中通常只能使用有限的关键字以文本的形式进行检索,无法准确地获取到想要的模型,存在较大的局限性。因此,本文研究了一种基于
应用程序编程接口(Application Programming Interface,简称API)在软件开发过程中起着重要作用,开发人员在软件开发、维护过程中借助API可以显著提高开发效率。API数量的急剧增长导致开发人员使用API的难度增加。API推荐技术帮助开发人员迅速找到需要的API。在API推荐技术中,研究人员需要分析各类包含自然语言的软件文档,从软件文档中提取API的功能描述、使用示例等
准确提取农作物收割导航路径线对于实现精准农业日趋重要,导航路径线不仅能够为智能稻麦收获机的自动驾驶系统提供路径信息,也可以为收获机的测产系统提供实时收割宽度。针对智能稻麦收获机导航路径检测易受干扰和可靠性差的问题,分析收获机的复杂工作环境特征,建立智能稻麦收获机导航线视觉检测模型,提出基于鸟瞰图导航线视觉检测区域图像分割的收割导航线检测与跟踪方法,解决了智能稻麦收获机导航系统中存在的准确高效获取相
在通信企业信息化建设的过程中,局点业务的运维管理占据着重要位置。并且,随着业务的数量急剧增长和业务的复杂度不断上升,通信企业对局点运维系统的依赖程度也越来越高。因此,对局点业务进行运维管理是保证业务正常运行的关键。一个良好的局点运维系统能够把局点业务的运行风险度降至最低,并提高通信企业的运维管理效率。近年来,伴随着互联网技术的迅猛发展,针对通信企业局点业务开发的运维管理系统也越来越多。但是,这些系
我国频发的各类自然灾害对道路交通的破坏非常巨大,建立完备的道路交通救援体系是挽救人民生命财产损失的重要手段。应急救援系统重在演练,但是在真实的演练环境不易搭建或代价巨大的条件下,通过创建道路应急抢通三维虚拟场景来演练救援队伍则势在必行。本文从三维场景的实际应用出发,结合虚拟现实技术、GIS(地理信息系统)技术以及数字高程模型的应用,创建了道路应急抢通三维虚拟场景,实现了灾害条件下对道路应急抢通装备
随着现代信息社会的加速发展,信息类型逐渐多样化,对于不同的信息呈现方法的需求也日益增强。多视图协调平行展示是基于单视图无法满足复杂程度越来越高的信息类型有效呈现的现实条件下,逐渐出现作为帮助用户观测数据的一种信息呈现方式。本文通过眼动追踪技术获取的眼动指标及其参数定量化地评估分析色彩视觉视觉线索对用户的视觉注意力的引导作用以及对于用户心智模型构建的调节作用,为多视图平行协调展示的信息表征与呈现方式