(1)oop與aop的區別:
oop是面向對象編程,aop是面向切面編程或者面向方面編程..
(2)aop的用處和優點
aop能夠將那些與業務無關,確為業務模塊所共同調用的邏輯或責任,例如日志記錄,性能統計,安全控制,異常處理,等封裝起來..
優點:減少系統代碼的重復性,降低模塊間的耦合度,有利于未來的可操作性和可維護性.
(3)aop的關鍵術語
在AOP(面向切面的編程)中,我們編寫程序時,首先思考要對程序中哪些方法進行攔截,攔截到這些方法后又要做哪些業務處理。這些關注過程,我們稱之為:橫切性關注點。由“橫切性關注點”引申出以下概念:
Aspect(切面):指橫切性關注點的抽象即為切面,它與類相似,只是兩者的關注點不一樣,類是對物體特征的抽象,而切面是橫切性關注點的抽象。程序里的切面就是AroundAdvise類的實現部分。
joinpoint(連接點):所謂連接點是指那些被攔截到的點,或者方法,字段.
Pointcut(切入點):所謂切入點是指我們要對那些joinpoint(連接點)進行攔截的定義
Advice(通知):切面必須要完成的事情.通知分為前置通知,后置通知,異常通知,環繞通知。
Target(目標對象):代理的目標對象