(1)oop与aop的区别:
oop是面向对象编程,aop是面向切面编程或者面向方面编程..
(2)aop的用处和优点
aop能够将那些与业务无关,确为业务模块所共同调用的逻辑或责任,例如日志记录,性能统计,安全控制,异常处理,等封装起来..
优点:减少系统代码的重复性,降低模块间的耦合度,有利于未来的可操作性和可维护性.
(3)aop的关键术语
在AOP(面向切面的编程)中,我们编写程序时,首先思考要对程序中哪些方法进行拦截,拦截到这些方法后又要做哪些业务处理。这些关注过程,我们称之为:横切性关注点。由“横切性关注点”引申出以下概念:
Aspect(切面):指横切性关注点的抽象即为切面,它与类相似,只是两者的关注点不一样,类是对物体特征的抽象,而切面是横切性关注点的抽象。程序里的切面就是AroundAdvise类的实现部分。
joinpoint(连接点):所谓连接点是指那些被拦截到的点,或者方法,字段.
Pointcut(切入点):所谓切入点是指我们要对那些joinpoint(连接点)进行拦截的定义
Advice(通知):切面必须要完成的事情.通知分为前置通知,后置通知,异常通知,环绕通知。
Target(目标对象):代理的目标对象