基于序列匹配的代码克隆分析系统设计与实现
| 摘要 | 第1-5页 |
| Abstract | 第5-8页 |
| 1 绪论 | 第8-13页 |
| ·课题背景 | 第8页 |
| ·代码克隆有关定义 | 第8-10页 |
| ·代码克隆分类 | 第10页 |
| ·代码克隆研究现状 | 第10-12页 |
| ·本文的工作 | 第12-13页 |
| 2 代码克隆检测技术 | 第13-22页 |
| ·源代码抽象表示 | 第13页 |
| ·代码克隆检测粒度 | 第13-14页 |
| ·克隆检测技术分类 | 第14-15页 |
| ·代码克隆分析流程 | 第15-18页 |
| ·常用相似度匹配算法 | 第18-22页 |
| 3 代码克隆检测算法的设计与实现 | 第22-41页 |
| ·用 AST表示源代码 | 第22-24页 |
| ·代码序列生成算法 | 第24-28页 |
| ·AST遍历算法 | 第25-26页 |
| ·代码序列的表示和存储 | 第26-27页 |
| ·匹配阈值 | 第27-28页 |
| ·一种基于序列匹配的克隆检测方法 | 第28-36页 |
| ·序列匹配算法在代码克隆检测中的应用 | 第28页 |
| ·Smith-Waterman算法 | 第28-29页 |
| ·对 Smith-Waterman算法的调整 | 第29-32页 |
| ·匹配算法实现 | 第32-33页 |
| ·回溯和聚集策略 | 第33-34页 |
| ·基于序列匹配的代码克隆检测方法 | 第34-36页 |
| ·代码克隆的可视化 | 第36-41页 |
| ·克隆检测报告的存储方式 | 第36-37页 |
| ·克隆检测结果的可视化方式 | 第37-41页 |
| 4 代码克隆分析系统的设计与实现 | 第41-59页 |
| ·系统框架 | 第41-43页 |
| ·预处理系统的设计与实现 | 第43-50页 |
| ·源代码预处理器 | 第43-46页 |
| ·AST解析引擎的设计 | 第46-49页 |
| ·克隆检测模块的设计 | 第49-50页 |
| ·后端分析系统的设计与实现 | 第50-53页 |
| ·图形处理模块的设计 | 第50-52页 |
| ·源代码浏览器的设计 | 第52-53页 |
| ·系统测试与克隆分析 | 第53-59页 |
| ·系统性能测试 | 第53-56页 |
| ·代码克隆分析 | 第56-59页 |
| 结论 | 第59-60页 |
| 参考文献 | 第60-63页 |
| 攻读硕士学位期间发表学术论文情况 | 第63-64页 |
| 致谢 | 第64-65页 |