APP下载

基于抽象语法树的数据泥团自动检测研究

2017-03-01刘宏韬胡志刚

计算机应用与软件 2017年1期
关键词:检测信息

刘宏韬 刘 伟,2 胡志刚

1(中南大学软件学院 湖南 长沙 410075)2(湖南中医药大学管理与信息工程学院 湖南 长沙 410208)

基于抽象语法树的数据泥团自动检测研究

刘宏韬1刘 伟1,2胡志刚1

1(中南大学软件学院 湖南 长沙 410075)2(湖南中医药大学管理与信息工程学院 湖南 长沙 410208)

数据泥团是一种常见的代码味道,它将带来重复代码和维护难度增加等问题。针对大部分已有的代码味道自动检测工具无法检测数据泥团,且检测类型不全面等问题,提出一种基于抽象语法树的数据泥团自动检测方法。该方法在已有检测工具的基础上,增加了新的数据泥团类型,并加入了剔除冗余数据泥团和提取子数据泥团等步骤。通过对4个开源项目进行数据泥团实验,结果表明方法具有较高的精确率,与Stench Blossom、inFusion等工具的数据泥团自动检测功能相比,能够检测出一些其他工具无法检测的数据泥团。同时,该方法具有较好的性能,执行时间与系统规模成正比。

代码味道 数据泥团 抽象语法树 源代码解析 重构

0 引 言

代码味道是指源代码中存在的一些不良实现方案。软件工程大师Martin Fowler和Kent Beck在文献[1]中初次使用“代码味道”一词来描述这些不良实现方案,文献中定义了22种常见的代码味道,包括数据泥团、重复代码、霰弹式修改等。此后,一些新的代码味道[2]被学者和研究人员陆续提出。检测、去除代码味道对于提高代码质量具有非常重要的意义[3],去除代码味道能够改善代码的可维护性,因此应当对程序代码中的代码味道进行检测和合理重构,在不改变程序外部行为的前提下改善代码的质量。……

登录APP查看全文

猜你喜欢

检测信息
订阅信息
小波变换在PCB缺陷检测中的应用
展会信息
信息
健康信息
健康信息(九则)
健康信息(十则)