【摘 要】
:
克隆代码又叫做代码克隆,往往是由开发人员的“拷贝-粘贴”行为导致的。在软件维护周期,开发过程中所引入的克隆代码会导致昂贵的维护费用。研究表明在传统软件中,克隆代码占
论文部分内容阅读
克隆代码又叫做代码克隆,往往是由开发人员的“拷贝-粘贴”行为导致的。在软件维护周期,开发过程中所引入的克隆代码会导致昂贵的维护费用。研究表明在传统软件中,克隆代码占到了软件源代码的13%-20%。随着Web技术的发展,越来越多的Web应用被开发并且在用户中流行。由于Web开发本身的一些特点,不管在新开发的还是稳定版本的Web应用中都存在克隆代码,相比于传统软件,克隆代码的比例甚至更加高。但是目前针对Web应用中克隆代码的检测研究较少,且大多数都是使用基于哈希值的方法来检测克隆代码。使用基于哈希值的方法意味着许多克隆代码会被漏掉,以及精度上的问题。本文在相关的研究基础上,总结各种检测方法的优缺点,构建并改进了基于树的克隆代码检测方案,并实现了基于树的克隆代码检测系统TCD(Tree-based Clone Detection)。该方案中改进并使用特征向量代替子树,以降低子树匹配所带来的开销。通过对特征向量的分析,引入了降低特征向量的维度的方法,从而减少了高维向量所带来的计算开销。引入建立特征向量的随机kd森林的索引来高效地查找每个特征向量的最邻近特征向量以得到克隆代码,从而保证了检测克隆代码的高效性以及准确性。通过对14个最流行的Web应用进行克隆代码的检测,统计每个Web应用中的克隆率并统计和分析结果中各种类型的克隆代码分布的情况。并选取其中三个应用的三个不同版本,统计同一应用的不同版本中的克隆率。最后,在不同应用中也检测到了克隆代码。大量的实验表明,TCD在大多数情况下,能够高效地检测三种类型的克隆代码。并且相对于现有的克隆代码检测工具,TCD在速度上、精度以及检测的克隆代码数量上都有一定的优势。
其他文献
随着互联网的飞速发展,Web服务作为一种全新的Web应用形式逐渐被用户所接受,也给服务提供商带来了巨大的商机。然而,在网络上存在的大量功能相同或者相似的小颗粒Web服务。如
黄曲霉毒素主要是由黄曲霉菌产生的次级代谢产物,是一种超强的致癌物质,能污染花生等农作物,给人类带来经济与健康的损害。本文以抗感花生GT-C20(R)和易感花生Tifrunner(S)为
随着机器人技术的发展及传统制造业智能化改造的推进,移动机器人技术越来越受到学术界和工业界的关注。本课题来源于校企合作项目,针对企业金属加工车间内的物料运输需求,设计可用于金属加工车间内物料搬运的移动机器人。本文主要对移动机器人的运动学、多传感器融合算法及激光SLAM技术展开研究。本文的主要研究内容如下:(1)分析了传统制造业金属机加工车间的特点,在此基础上明确了移动机器人的设计需求,对移动机器人的
本文运用1956-2015年NCEP/NCAR再分析数据以及CMAP降水数据,采用线性趋势、Mann-kendall突变检验及Morlet小波等方法分析了东亚纬向热力差异季节转换时间的长期变化趋势、突
我国早在上一世纪末就进入了老龄化社会,各种与老年人相关的问题相继而出。目前,我国老年人口的增长速度逐步加快,应对养老问题的策略较为不足,养老问题日显突出。据研究表明,我国老年人口所占比例的峰值将出现在2026年至2027年之间,因此解决养老问题对我国来说迫在眉睫。面对当前的局势,我国急需一套更加合理完善的新型养老模式来应对。现今中国社会,经济飞速发展,老年人对生活质量追求随之攀升。传统养老模式下的
随着纳米技术的兴起和发展,以压电纳米定位平台为核心组成部分的精密定位系统已被广泛应用于原子力显微镜、光栅刻画机、超精密加工机床等高端制造装备。压电纳米定位平台具备分辨率高、响应速度快、结构紧凑、无运动摩擦、无需润滑等优点,能为半导体加工、超精密制造、生物制造、纳米检测等领域提供可达纳米级精度的运动定位。近年来,围绕高速高精度制造技术的应用扩展,对压电纳米定位平台的运动速度和定位精度要求越来越高。然
随着科技发展,人们对材料的性能的要求越来越高,蓝宝石以其优异的光学、机械和物理性能被广泛应用于航空航天、光学、电子及其它工业领域。蓝宝石硬度高、脆性大,加工难度大,传统的磨削加工不但加工时刀具磨损大,加工时间长,制造成本很高,而且远远达不到加工质量的要求。此外,游离或固结磨料研磨效率低,易出现加工缺陷,为了解决这一系列的问题本文引入了在线电解修整技术(ELID)。采用ELID磨削技术将大大减少加工
为应对乘用车第四阶段油耗法规,各大车企均大力发展新能源汽车和节能汽车,其中混合动力系统是一个研究热点。但目前国内自主混合动力汽车多采用传统奥托循环发动机,与丰田混
我国是世界上极端天气气候事件及灾害最严重的国家之一,全球变暖背景下极端高温日数造成的灾害风险日趋严重,通过分析不同区域、不同影响程度的极端高温日数的时空变化特征,
番茄黄化卷叶病毒病是出现在番茄生产上的一种危害程度高,传播广泛的病害。Ty-1、Ty-2和Ty-3这三个基因是主要的抗病基因。本研究以番茄黄化卷叶病毒抗病纯合体(Ty-1/Ty-1、T