论坛首页 入门技术论坛

通俗解释AOP术语 (新手帖)

浏览 2451 次
精华帖 (0) :: 良好帖 (1) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-11-06   最后修改:2009-11-06
AOP = 我们要在一些方法执行前/执行后/抛出异常时进行一些额外的操作。

为了完成这件事情,需要告诉程序:
1.What? 哪些方法需要进行额外的操作。
2.How? 什么时候进行额外操作?额外操作要做什么?

AOP有一堆令人晦涩的术语,下面按照以上两步来进行解释:
第一步:
我们通过定义一个表达式(Pointcut)来告诉程序,我们需要对那些方法增加额外的操作。
通过这个表达式(Pointcut),我们得到了那些需要增强的方法(Joinpoint)。
第二步:
我们需要告诉程序:这些方法(Joinpoint)需要做怎样的增强(Advice):
1.什么时候进行额外操作?(执行前/执行后/抛出异常时)。
2.额外操作要做什么?


我们把两个步骤定义到一个地方(Aspect).
这两个步骤涉及到的被修改对象我们叫做(Target Object).
完成以上操作的动作我们叫做(Weaving)

下面总结一下:

需要我们关心的:
Pointcut: 一个表达式,用来找出需要被增强的方法。
Advice: 这个方法要如何被增强。

概念性的:
Joinpoint: 通过Pointcut找出来的结果。
Aspect: 整个AOP规则的定义。
Target Object: 被修改了的Objects。
Weaving: 执行AOP的过程。

我想这可以帮助初学者理解AOP,当然,我也是初学者,说的不对的地方,欢迎拍砖

   发表时间:2009-11-06  
面向切面编程?
0 请登录后投票
   发表时间:2009-11-10  
的确够通俗的
0 请登录后投票
   发表时间:2009-11-18  
通俗 简单 明了 我喜欢!
0 请登录后投票
论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics