网站首页  软件下载  游戏下载  翻译软件  电子书下载  电影下载  电视剧下载  教程攻略

请输入您要查询的图书:

 

书名 Eclipse AspectJ中文版--利用Eclipse和AspectJ进行面向方面程序设计
分类
作者 (美)科尔勒
出版社 清华大学出版社
下载
简介
编辑推荐

使用AspectJ,Java开发者就能利用已熟识的语言,在当前最流行的Eclipse开发环境中尽情体会面向方面编程(AOP)带来的优势。AOP能够提高程序的模块性,使得编写的代码更接近于设计目标。它能减少实现普通特性和功能所花费的时间,提高质量,也能在系统和服务中整合简单的Java对象以及创建更简单且重用性更高的组件,并且提供了更多的附加功能。

本书是学习AspectJ语苦的权威指南,涵盖了利用AspectJ和Eclipse进行AOP开发的方方面面,包括从创建新项目到扩展和文档化已完全成型的应用程序的所有内容,并提供了完整的API参考以及如何在项目中采用AspectJ的现实性指导。从而帮助您轻松掌握AOP的重要原理和技术,以应对最棘手的软件质量、效率和维护方面的挑战。

内容推荐

本书内容:

安装并配置Eclipse和AspectJ开发工具(AJDT);

AOP如何对从错误检测到性能的每个方面进行模块化和优化;

创建新的AspectJ应用程序以及将AOP应用至U现有系统;

构建、调试和文档化AspectJ应用程序;

理解关键的AOP概念,如连接点、切入点、advice和类型间声明;

掌握高级技术:Aspect库、与已编译好的.class文件进行链接、可视化、面向方面的设计等。

读者对象:

所有面向方面的编程爱好者、Java程序员以及Eclipse环境下的编程人员。

目录

第Ⅰ部分 Eclipse、AspectJ

 和AJDT简介

第1章 Eclipse入门 3

1.1 什么是Eclipse 3

1.2 安装Eclipse 3

1.3 Eclipse基础 4

1.4 安装AJDT 10

1.5 本书中的示例 15

1.6 本章小结 16

第2章 AJDT起步 17

2.1 Simple Insurance应用程序 17

2.2 跟踪保单的更改 20

2.3 创建AspectJ项目 22

2.3.1 转换既有的Java项目 22

2.3.2 配置AspectJ开发

   的工作环境 25

2.3.3 创建新的AspectJ项目 26

2.4 创建PolicyChange

Notification aspect 27

2.5 声明保单通知 29

2.5.1 连接点简介 29

2.5.2 编写切入点 30

2.5.3 使用警告声明 32

2.6 实现保单通知 35

2.6.1 “通知”简介 36

2.6.2 调用通知方法 37

2.7 AJDT中的advice 39

2.7.1 大纲视图 40

2.7.2 编辑器 41

2.7.3 文档与可视化 42

2.8 评估具体的实现 43

2.8.1 更改切入点声明 45

2.8.2 删除旧有的对notify

的调用 47

2.8.3 比较模块化和非模块化

的实现 47

2.9 完善程序设计 48

2.10 本章小结 50

第3章 扩展应用程序 51

3.1 迄今的经历 51

3.2 基于序列化的持久性 53

3.2.1 创建SerializationBased

Persistence aspect 53

3.2.2 使领域对象序列化 54

3.2.3 管理DAO 55

3.2.4 DAO的依赖注入 58

3.2.5 完成aspect 63

3.2.6 评估具体实现 64

3.3 使用Hibernating 66

3.3.1 准备使用Hibernate 66

3.3.2 使用Hibernate实现

持久性 66

3.3.3 创建HibernateManager

aspect 69

3.3.4 DAO的依赖注入 70

3.3.5 满足Hibernate的要求 70

3.3.6 初始化Hibernate配置 75

3.3.7 对异常进行映射 77

3.3.8 实现数据访问对象 80

3.3.9 评估实现 85

3.4 管理构建配置 87

3.5 本章小结 89

第4章 深入AJDT 90

4.1 编译一个AspectJ项目 90

4.1.1 控制项目构建 90

4.1.2 设置编译器选项 93

4.2 调试 94

4.3 编辑器模板和大纲视图

工具栏 99

4.3.1 编辑器模板 99

4.3.2 大纲视图工具栏 100

4.4 生成文档(ajdoc) 101

4.5 AspectJ帮助、示例和

备忘表 102

4.5.1 从AJDT和AspectJ获取

基本的帮助 103

4.5.2 AspectJ示例 103

4.5.3 AspectJ备忘表 104

4.6 本章小结 105

第Ⅱ部分 AspectJ语言

第5章 AspectJ概述 109

5.1 aspect概述 109

5.2 连接点与切入点 112

5.2.1 连接点 112

5.2.2 切入点 113

5.3 advice 114

5.4 类型间声明 116

5.5 AspectJ语言设计的关键

特性 118

5.6 本章小结 119

第6章 直面point 120

6.1 计算器程序 120

6.2 切入点指示符介绍 121

6.3 方法调用切入点指示符 122

6.3.1 切入点位于何处 124

6.3.2 重用切入点 125

6.4 复合切入点 126

6.5 模式与签名 128

6.5.1 类型模式 128

6.5.2 方法签名 130

6.5.3 小结 135

6.6 方法执行切入点指示符 135

6.7 target切入点指示符 138

6.7.1 调用(call)和目标

(target) 138

6.7.2 静态方法 142

6.7.3 执行(execution)与目标

(target) 142

6.8 this切入点指示符 143

6.8.1 call和this 144

6.8.2 execution和this 145

6.9 get和set切入点指示符 145

6.9.1 修饰符模式 146

6.9.2 域类型模式 146

6.9.3 类型声明模式 146

6.9.4 域名模式 147

6.9.5 签名示例 147

6.9.6 this和target与get和set

组合使用 147

6.9.7 数组访问 147

6.9.8 建立带get和set

的pointcut 149

6.10 使用args切入点指示符捕获

上下文 150

6.10.1 匹配参数类型 151

6.10.2 提取参数值 152

6.10.3 初始类型推广 155

6.11 使用this和args提取值 155

6.12 handler切入点指示符 157

6.13 initialization切入点

指示符 160

6.13.1 staticinitialization切入

点指示符 161

6.13.2 preinitialization和

initialization切入点

指示符 163

6.14 静态定界切入点指示符:

within、withincode 166

6.15 动态定界切入点指示符:

cflow、cflowbelow 168

6.16 adviceexecution切入点

指示符 174

6.17 if切入点指示符 176

6.18 如何编写一个好

的切入点 180

6.19 常见问题 181

6.19.1 不能匹配对super/this

的调用 181

6.19.2 不能匹配映射做出

的调用 182

6.19.3 空pointcut定义 183

6.20 本章小结 184

第7章 如何使用advice 185

7.1 advice的不同类型 185

7.1.1 before advice 186

7.1.2 after advice 187

7.1.3 around advice 196

7.2 advice参数和切入点 201

7.3 编写advice体中的逻辑 202

7.3.1 advice运行的上下文 202

7.3.2 advice中的异常 206

7.4 advice排序 207

7.4.1 单个aspect的优先级 208

7.4.2 多个aspect之间的优先

关系 215

7.5 弱化异常 216

7.6 declare warning和

declare error 218

7.7 常见问题 219

7.7.1 在处理器连接点处只能有

before advice 219

7.7.2 没有获取编译时常量

的连接点 220

7.7.3 构造函数的执行没有

返回值 220

7.7.4 设置连接点没有返回值 220

7.7.5 after throwing advice不处理

异常 220

7.7.6 declare error / warning

pointcut表达式上

的限制 220

7.8 本章小结 220

第8章 类型间声明 222

8.1 域、方法和构造函数 222

8.1.1 类型间域声明 223

8.1.2 类型间方法声明 226

8.1.3 类型间构造函数声明 229

8.2 范围和可见度 230

8.2.1 类型间声明以及来自于

类型间声明的可见度 230

8.2.2 类型间声明和继承 230

8.2.3 声明冲突的处理 231

8.3 类型间声明和接口 232

8.3.1 使用接口作为类型间声明

   目标 232

8.3.2 和接口一起使用declare

parents 233

8.4 继承类 242

8.5 与类型间声明一起使用切入

点和advice 243

8.6 本章小结 244

第9章 aspect 245

9.1 aspect定义和初始化 245

9.2 aspect实例化 246

9.2.1 singleton aspect 249

9.2.2 per-this aspect 249

9.2.3 per-target aspect 253

9.2.4 per-Cflow和

per-Cflowbelow aspect 257

9.2.5 实例化模型概述 259

9.3 aspect继承 260

9.3.1 继承aspect 260

9.3.2 继承类 263

9.3.3 实现接口 263

9.4 内部aspect 264

9.5 aspect优先级 265

9.6 常见问题 266

9.6.1 忘记per-xxx aspect中

advice执行处的隐式

条件 266

9.6.2 aspect链接的类型必须是

可获得的 266

9.7 本章小结 267

第10章 使用AspectJ API 268

10.1 包org.aspectj.lang 269

10.1.1 org.aspectj.lang.Join

Point 269

10.1.2 org.aspectj.lang.JoinPoint.

StaticPart 273

10.1.3 org.aspectj.lang.

Signature 274

10.1.4 org.aspectj.lang.

NoAspectBound

Exception 277

10.1.5 org.aspectj.lang.

SoftException 278

10.2 包org.aspectj.lang.reflect 279

10.2.1 org.aspecj.lang.reflect.

SourceLocation 279

10.2.2 org.aspectj.lang.reflect.

MemberSignature 281

10.2.3 org.aspectj.lang.reflect.

FieldSignature 281

10.2.4 org.aspectj.lang.reflect.

CodeSignature 282

10.2.5 org.aspectj.lang.reflect.

MethodSignature 284

10.2.6 org.aspectj.lang.reflect.

AdviceSignature 285

10.2.7 ConstructorSignature和

InitializerSignature 286

10.2.8 org.aspectj.lang.reflect.

CatchClauseSignature 286

10.3 本章小结 288

第Ⅲ部分 综合运用

第11章 采用AspectJ 291

11.1 采用过程 291

11.1.1 实施aspect 292

11.1.2 基础结构/辅助aspect 292

11.1.3 业务/核心aspect 293

11.1.4 面向aspect的设计和

结构 294

11.2 aspect的不同类型 294

11.2.1 一般目的aspect 294

11.2.2 特定领域aspect 295

11.2.3 特定应用aspect 295

11.3 实施aspect示例 295

11.3.1 使用System.out 298

11.3.2 保持组件模块性 299

11.4 基础结构aspect示例 305

11.4.1 实现追踪工具 305

11.4.2 管理异常 315

11.4.3 管理 321

11.5 核心aspect示例 328

11.5.1 调用不可信代码 328

11.5.2 用Spring配置aspect 331

11.6 评价Simple Insurance

应用程序 338

11.7 本章小结 339

第12章 高级AJDT 340

12.1 Aspect库 340

12.2 将aspect与编译好的.class

文件链接 350

12.3 Ant集成 355

12.3.1 作为Java项目来构建

Simple Insurance 355

12.3.2 作为AspectJ项目构建

Simple Insurance 355

12.3.3 在AJDT中用Ant构建时

的限制 357

12.4 aspect可视化 358

12.4.1 Visualiser菜单 358

12.4.2 Visualiser视图 359

12.5 本章小结 361

第13章 面向aspect设计 362

13.1 发现aspect 362

13.1.1 设计中的aspect 362

13.1.2 代码中的aspect 363

13.2 如何构造一个好的

aspect? 364

13.3 结束语 364

附录A 命令行AspectJ 365

A.1 安装AspectJ 365

A.2 使用编译器 366

A.3 用Ant构建 367

附录B AspectJ语言快速参考 369

B.1 AspectJ声明 369

B.2 切入点 370

B.3 通配符 372

B.4 advice 372

B.5 类型间声明 373

附录C 用户指南 376

C.1 邮箱列表和FAQ 376

C.2 提出bug和改进请求 378

C.3 为AspectJ和AJDT

的开发出力 378

附录D AJDT图标参考 380

D.1 对象 380

D.2 对象装饰符 381

D.3 标记 382

D.4 构建配置 382

随便看

 

霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。

 

Copyright © 2002-2024 101bt.net All Rights Reserved
更新时间:2025/5/11 8:02:35