摘要 | 第1-5页 |
ABSTRACT | 第5-8页 |
第一章 绪论 | 第8-12页 |
·课题背景 | 第8-10页 |
·课题意义 | 第10页 |
·论文的主要工作 | 第10-12页 |
·论文的研究内容 | 第10页 |
·论文的结构 | 第10-12页 |
第二章 不良代码特征的研究 | 第12-25页 |
·重复的代码(DUPLICATED CODE) | 第12-15页 |
·过长函数(LONG METHOD) | 第15-16页 |
·无用类(UNUSED CLASSES) | 第16-17页 |
·树形依赖关系(DEPENDENCY GRAPH) | 第17页 |
·静态环状依赖关系(STATIC CIRCLE DEPENDENCY) | 第17-18页 |
·显式依赖(EXPLICIT DEPENDENCY) | 第18-20页 |
·过长参数列(LONG PARAMETER LIST) | 第20-22页 |
·Replace Parameter with Methods(以函数取代参数) | 第20-21页 |
·Introduce Parameter Object(引入参数对象) | 第21-22页 |
·散弹式修改(SHOTGUN SURGERY) | 第22-23页 |
·发散式变化(DIVERGENT CHANGE) | 第23页 |
·依恋情结(FEATURE ENVY) | 第23页 |
·数据泥团(DATA CLUMPS) | 第23页 |
·基本类型偏执(PRIMITIVE OBSESSION) | 第23-24页 |
·总结 | 第24-25页 |
第三章 基于接口扩展的重构方法 | 第25-42页 |
·接口的定义 | 第25页 |
·基于接口扩展的重构方法主体思想 | 第25-31页 |
·基于接口扩展重构方法的具体应用 | 第31-42页 |
·引入参数对象(Introduce Parameter Object) | 第31-32页 |
·以工厂函数取代构造函数(Replace Constructor With Factory Method) | 第32页 |
·接口向下封装(Interface Encapsulate Downcast) | 第32-33页 |
·替换算法(Substitute Algorithm) | 第33页 |
·接口提取(Extract Interface) | 第33页 |
·双重观察对象(Duplicate Observed Data) | 第33-35页 |
·子类提取(Extract SubClass) | 第35-36页 |
·消除耦合的消息链(Remove Coherent Message Chains) | 第36-37页 |
·消除冗余类(Remove Lazy Class) | 第37-38页 |
·移除中介入(Remove Middle Man) | 第38-39页 |
·移除不完整的类库(Remove Incomplete Library Class) | 第39页 |
·以类来替代类别码(Replace Type Code With Class) | 第39-42页 |
第四章 基于接口扩展的重构方法在现有系统中的应用实例 | 第42-51页 |
·EMAN系统简介 | 第42-45页 |
·系统现状 | 第42页 |
·持续集成环境 | 第42-44页 |
·安全网的搭建 | 第44-45页 |
·典型案例 | 第45-51页 |
·无法在测试环境中创建被测对象 | 第46页 |
·无法在测试环境中运行被测方法 | 第46-47页 |
·不恰当的对象获取方式 | 第47-48页 |
·对象依赖关系复杂 | 第48-49页 |
·数据缺乏对象封装 | 第49-51页 |
第五章 实验与性能分析 | 第51-54页 |
·时间效率的提升 | 第51-52页 |
·功能扩展效率的提升 | 第52-53页 |
·实验总结 | 第53-54页 |
第六章 总结与展望 | 第54-55页 |
致谢 | 第55-56页 |
参考文献 | 第56-58页 |
研究生阶段发表论文目录 | 第58页 |