| 摘要 | 第5-7页 |
| ABSTRACT | 第7-8页 |
| 第一章 引言 | 第13-17页 |
| 1.1 研究动因 | 第13-14页 |
| 1.2 研究现状 | 第14-15页 |
| 1.3 本文工作 | 第15-16页 |
| 1.4 论文结构 | 第16-17页 |
| 第二章 软件维护及代码风格背景介绍 | 第17-25页 |
| 2.1 软件维护介绍 | 第17-18页 |
| 2.1.1 模块易变性 | 第17-18页 |
| 2.1.2 模块易错性 | 第18页 |
| 2.2 代码风格调研 | 第18-19页 |
| 2.3 Python代码风格 | 第19-21页 |
| 2.3.1 命名规则 | 第19-20页 |
| 2.3.2 格式 | 第20页 |
| 2.3.3 注释 | 第20-21页 |
| 2.3.4 异常处理 | 第21页 |
| 2.4 开源项目中的风格违反情况 | 第21-23页 |
| 2.5 本章小结 | 第23-25页 |
| 第三章 Python代码风格对模块易变性的影响 | 第25-43页 |
| 3.1 研究问题提出 | 第25-26页 |
| 3.2 实验方案设计 | 第26-30页 |
| 3.2.1 实验项目选取 | 第26-27页 |
| 3.2.2 风格违反信息收集流程 | 第27-29页 |
| 3.2.3 文件变更信息收集流程 | 第29-30页 |
| 3.3 问题分析方法 | 第30-35页 |
| 3.3.1 Fisher's Exact Test与Odds Ratio | 第30-32页 |
| 3.3.2 Wilcoxon Rank-sum Test与Cohen's d | 第32-33页 |
| 3.3.3 Logistic Regression | 第33-35页 |
| 3.4 实验结果分析 | 第35-40页 |
| 3.4.1 代码风格的违反与模块易变性关系 | 第35-37页 |
| 3.4.2 违反代码风格的密度与模块易变性关系 | 第37-39页 |
| 3.4.3 违反代码风格的类型与模块易变性关系 | 第39-40页 |
| 3.5 进一步讨论 | 第40-42页 |
| 3.5.1 实验结果讨论 | 第40-41页 |
| 3.5.2 实验效度威胁 | 第41-42页 |
| 3.6 本章小结 | 第42-43页 |
| 第四章 Python代码风格对模块易错性的影响 | 第43-57页 |
| 4.1 研究问题提出 | 第43-44页 |
| 4.2 实验方案设计 | 第44-48页 |
| 4.2.1 实验项目介绍 | 第44-46页 |
| 4.2.2 文件缺陷信息收集流程 | 第46-48页 |
| 4.3 问题分析方法 | 第48-49页 |
| 4.4 实验结果分析 | 第49-54页 |
| 4.4.1 代码风格的违反与模块易错性关系 | 第50-52页 |
| 4.4.2 违反代码风格的密度与模块易错性关系 | 第52-53页 |
| 4.4.3 违反代码风格的类型与模块易错性关系 | 第53-54页 |
| 4.5 进一步讨论 | 第54-56页 |
| 4.5.1 实验结果讨论 | 第55页 |
| 4.5.2 实验效度威胁 | 第55-56页 |
| 4.6 本章小结 | 第56-57页 |
| 第五章 总结和展望 | 第57-61页 |
| 5.1 本文工作总结 | 第57-58页 |
| 5.2 未来工作展望 | 第58-61页 |
| 参考文献 | 第61-65页 |
| 致谢 | 第65-67页 |
| 科研成果 | 第67-69页 |
| 附录A 命名规则汇总表 | 第69-71页 |
| 附录B 格式汇总表 | 第71-73页 |
| 附录C 注释汇总表 | 第73-75页 |
| 附录D 异常处理汇总表 | 第75-76页 |