| 摘要 | 第1-5页 |
| Abstract | 第5-9页 |
| 图目录 | 第9-10页 |
| 表目录 | 第10-11页 |
| 第一章 引言 | 第11-22页 |
| ·面向方面编程的起源 | 第11-14页 |
| ·结构化和面向对象的程序设计 | 第11-12页 |
| ·结构化和面向对象程序设计的问题 | 第12-14页 |
| ·面向方面编程(AOP) | 第14-16页 |
| ·关注问题的分离 | 第14-16页 |
| ·AOP 的三个开发步骤 | 第16页 |
| ·类AOP 和AOP 语言定位横切关注点 | 第16-20页 |
| ·合成过滤器 | 第16-17页 |
| ·自适应性编程(Adaptive Programming) | 第17页 |
| ·多维方法 | 第17-18页 |
| ·反射方法 | 第18页 |
| ·混合方法 | 第18-19页 |
| ·AspectJ | 第19-20页 |
| ·本文的研究内容和成果 | 第20-21页 |
| ·论文的组织结构 | 第21-22页 |
| 第二章 AOP 的现状分析及一种新方案设计 | 第22-27页 |
| ·AOP 语言的基本规范 | 第22-23页 |
| ·连接点 | 第22页 |
| ·Advice | 第22-23页 |
| ·Pointcut | 第23页 |
| ·Aspect | 第23页 |
| ·AOP 语言的实现类型 | 第23-24页 |
| ·目前各AOP 实现存在的问题 | 第24-25页 |
| ·AOP 的发展趋势 | 第24页 |
| ·目前各AOP 实现的不足 | 第24-25页 |
| ·造成各AOP 实现不足的原因 | 第25页 |
| ·一种针对AOP 实现的不足的解决方案 | 第25-26页 |
| ·小结 | 第26-27页 |
| 第三章 LLVM 编译器体系结构简介 | 第27-42页 |
| ·LLVM 简介 | 第27-29页 |
| ·LLVM 的代码实现 | 第29-35页 |
| ·LLVM 指令集概述 | 第29-30页 |
| ·语言不相关类型信息,Cast&GetElementPtr | 第30-32页 |
| ·显式内存分配和统一的内存模型 | 第32页 |
| ·函数调用和异常处理 | 第32-35页 |
| ·文本格式,二进制,和内存实现 | 第35页 |
| ·LLVM 编译器体系结构 | 第35-39页 |
| ·LLVM 编译器框架的高级设计 | 第36-37页 |
| ·编译时:扩展前端和静态优化器 | 第37-38页 |
| ·链接器和过程间优化器 | 第38页 |
| ·离线或JIT 原始代码生成器 | 第38页 |
| ·运行时路径剖面和再编译 | 第38-39页 |
| ·基于终端用户的剖面信息的离线再优化 | 第39页 |
| ·与低级虚拟机相关的一些研究工作 | 第39-40页 |
| ·小结 | 第40-42页 |
| 第四章 基于LLVM 的运行时多语言AOP 系统的设计实现 | 第42-70页 |
| ·总体设计 | 第42-44页 |
| ·LLVM 可以提供的支持 | 第42页 |
| ·总体结构设计和各模块的功能概述 | 第42-44页 |
| ·LLVM 的扩展方法 | 第44-45页 |
| ·实现动态织入的几个重要数据结构 | 第45-50页 |
| ·连接点图 | 第45-48页 |
| ·Advice | 第48-49页 |
| ·Aspect 结构 | 第49-50页 |
| ·织入器设计 | 第50-61页 |
| ·织入点的定位 | 第50-55页 |
| ·Advice 的织入方式 | 第55-57页 |
| ·连接点上下文的访问方法 | 第57-60页 |
| ·其他问题 | 第60-61页 |
| ·织入器的执行流程 | 第61页 |
| ·匹配器设计 | 第61-68页 |
| ·XML 文件模式 | 第61-67页 |
| ·匹配器的具体执行流程 | 第67-68页 |
| ·辅助功能模块设计 | 第68-69页 |
| ·advice 优先级问题 | 第68页 |
| ·与控制程序的交互问题 | 第68-69页 |
| ·小结 | 第69-70页 |
| 第五章 AOP 系统的测试和分析 | 第70-84页 |
| ·测试原理和分析原则 | 第70-71页 |
| ·一个具体例子的测试分析 | 第71-79页 |
| ·测试环境 | 第71页 |
| ·测试用例 | 第71-75页 |
| ·预期结果 | 第75页 |
| ·测试结果及分析 | 第75-79页 |
| ·多组测试用例的结果分析 | 第79-83页 |
| ·试验数据 | 第79-81页 |
| ·分析工具 | 第81页 |
| ·分析结果 | 第81-83页 |
| ·小结 | 第83-84页 |
| 第六章 总结与展望 | 第84-86页 |
| ·主要工作总结 | 第84-85页 |
| ·今后工作展望 | 第85-86页 |
| 致谢 | 第86-87页 |
| 参考文献 | 第87-91页 |
| 在学期间研究成果 | 第91页 |