基于潜在语义分析的代码坏味检测
摘要 | 第4-5页 |
Abstract | 第5-6页 |
1 绪论 | 第10-16页 |
1.1 课题背景及研究意义 | 第10-11页 |
1.2 国内外研究现状 | 第11-14页 |
1.2.1 代码坏味的研究现状 | 第11-13页 |
1.2.2 潜在语义分析的研究现状 | 第13-14页 |
1.3 课题研究主要内容 | 第14页 |
1.4 论文的组织架构 | 第14-16页 |
2 代码坏味概述 | 第16-27页 |
2.1 代码坏味的概念与分类 | 第16-18页 |
2.1.1 类内的代码坏味 | 第16-17页 |
2.1.2 类间的代码坏味 | 第17-18页 |
2.2 过大类与特征依恋 | 第18-20页 |
2.2.1 过大类 | 第18-19页 |
2.2.2 特征依恋 | 第19-20页 |
2.3 坏味的检测方法 | 第20-26页 |
2.3.1 检测的一般过程 | 第20-21页 |
2.3.2 基于度量的检测方法 | 第21-23页 |
2.3.3 基于可视化的检测方法 | 第23-24页 |
2.3.4 基于机器学习的检测方法 | 第24-25页 |
2.3.5 基于语义的检测方法 | 第25-26页 |
2.4 本章小结 | 第26-27页 |
3 潜在语义分析理论 | 第27-32页 |
3.1 潜在语义分析基本思想 | 第27-28页 |
3.2 奇异值分解 | 第28-30页 |
3.3 R中的潜在语义分析包 | 第30页 |
3.4 潜在语义分析的优缺点 | 第30-31页 |
3.5 本章小结 | 第31-32页 |
4 概念内聚性和耦合性 | 第32-38页 |
4.1 内聚性和耦合性的概念 | 第32页 |
4.2 语义相似 | 第32-33页 |
4.3 概念内聚性 | 第33-35页 |
4.3.1 类中方法的平均概念相似性 | 第33-34页 |
4.3.2 计算示例 | 第34-35页 |
4.4 概念耦合性 | 第35-37页 |
4.4.1 方法与类间的概念相似性 | 第35-36页 |
4.4.2 计算示例 | 第36-37页 |
4.4.3 类间极大概念耦合 | 第37页 |
4.5 本章小结 | 第37-38页 |
5 代码坏味检测 | 第38-45页 |
5.1 检测过程 | 第38页 |
5.2 AST及标识符提取算法 | 第38-42页 |
5.3 过大类的检测 | 第42-43页 |
5.3.1 检测过程 | 第42页 |
5.3.2 参数设定 | 第42-43页 |
5.4 特征依恋的检测 | 第43-44页 |
5.4.1 检测过程 | 第43-44页 |
5.4.2 参数设定 | 第44页 |
5.5 本章小结 | 第44-45页 |
6 实验与分析 | 第45-53页 |
6.1 实验准备 | 第45-47页 |
6.1.1 实验环境的准备 | 第45页 |
6.1.2 实验数据的准备 | 第45-47页 |
6.2 实验结果的评价标准 | 第47页 |
6.2.1 评价标准 | 第47页 |
6.3 实验结果及结果对比 | 第47-52页 |
6.3.1 实验结果 | 第47-51页 |
6.3.2 实验对比结果 | 第51-52页 |
6.4 本章小结 | 第52-53页 |
7 总结与展望 | 第53-55页 |
7.1 总结 | 第53页 |
7.2 展望 | 第53-55页 |
参考文献 | 第55-61页 |
致谢 | 第61-63页 |
攻读学位期间取得的科研成果清单 | 第63页 |