| 摘要 | 第1-6页 |
| Abstract | 第6-10页 |
| 第1章 绪论 | 第10-16页 |
| ·课题的提出及研究意义 | 第10-13页 |
| ·应用系统开发中的现状与不足 | 第10-12页 |
| ·重构技术应用的必要性 | 第12-13页 |
| ·AOP技术应用的意义 | 第13页 |
| ·软件重构的研究现状 | 第13-15页 |
| ·本文工作 | 第15页 |
| ·本章小结 | 第15-16页 |
| 第2章 重构和面向方面编程 | 第16-35页 |
| ·重构技术 | 第16-25页 |
| ·重构的作用 | 第16-18页 |
| ·重构的原理 | 第18-21页 |
| ·大型重构方法 | 第21-24页 |
| ·重构的实施原则 | 第24-25页 |
| ·面向方面编程技术 | 第25-34页 |
| ·横切关注点分离的提出 | 第25-26页 |
| ·AOP技术概述 | 第26-27页 |
| ·AOP实现机制 | 第27-29页 |
| ·AOP核心技术点 | 第29-31页 |
| ·AOP的主要开发步骤 | 第31-33页 |
| ·AspectJ | 第33-34页 |
| ·本章小结 | 第34-35页 |
| 第3章 面向方面重构 | 第35-42页 |
| ·软件重构与 AOP的关系 | 第35-38页 |
| ·共性关系 | 第36-37页 |
| ·对立关系 | 第37-38页 |
| ·面向方面重构的特点 | 第38-39页 |
| ·面向方面重构的内容 | 第39-40页 |
| ·遗留系统的方面识别和封装 | 第39-40页 |
| ·面向方面程序的重构 | 第40页 |
| ·面向方面重构的步骤 | 第40-41页 |
| ·本章小结 | 第41-42页 |
| 第4章 横切关注代码的识别 | 第42-54页 |
| ·类关系图 | 第42-43页 |
| ·程序风格 | 第43-45页 |
| ·横切关注的良好布局 | 第43-44页 |
| ·几种横切关注行为的表现 | 第44-45页 |
| ·横切关注代码的信息确认 | 第45-46页 |
| ·搜索过程中一些情况的说明 | 第45页 |
| ·获取搜索的入口信息 | 第45-46页 |
| ·利用类关系图搜索横切关注代码 | 第46-52页 |
| ·方式一对应的横切关注搜索方法 | 第46-50页 |
| ·入口节点的确定 | 第46-47页 |
| ·搜索和识别的过程 | 第47-50页 |
| ·方式二对应的横切关注搜索方法 | 第50-52页 |
| ·入口节点的确定 | 第50-51页 |
| ·搜索和识别的过程 | 第51-52页 |
| ·识别结果的描述 | 第52-53页 |
| ·本章小结 | 第53-54页 |
| 第5章 识别结果的方面封装 | 第54-67页 |
| ·AspectJ高级特性的简要介绍 | 第54-55页 |
| ·方面的封装方法 | 第55-66页 |
| ·空 Aspect的声明 | 第55-56页 |
| ·建立 Aspect内部类型成员声明 | 第56-58页 |
| ·在搜索结果中识别通知体 | 第58-61页 |
| ·识别连接点并确定命名切入点标识的具体定义 | 第61-64页 |
| ·方面的整理 | 第64-66页 |
| ·本章小结 | 第66-67页 |
| 第6章 AspectJ程序的重构 | 第67-73页 |
| ·AspectJ中使用 OOP重构方法的讨论 | 第67-68页 |
| ·排除覆盖方法 | 第67-68页 |
| ·增加切点方法 | 第68页 |
| ·对三种基本重构方法的补充 | 第68-71页 |
| ·AspectJ中 Aspect机制自身重构问题的探讨 | 第71-72页 |
| ·本章小结 | 第72-73页 |
| 第7章 结论 | 第73-75页 |
| ·论文工作总结 | 第73页 |
| ·进一步研究的工作 | 第73-75页 |
| 参考文献 | 第75-79页 |
| 致谢 | 第79-80页 |
| 作者简介 | 第80-81页 |
| 攻读硕士期间发表的论文和参加科研情况 | 第81页 |