非常感謝你的閱讀,如果你覺得好或者對你有一定的幫助,請積極參與評論以示鼓勵。?
曾遇到“
AOP與動態代理有什么聯系”的問題,現把個人觀點整理如下:
我覺得,動態代理是AOP的主要實現手段之一,AOP是動態代理的一種應用深化
AOP是一種思想,或者是方法論,類似OOP,是OOP的有力補充;
OOP側重于主要業務功能設計(一般關注點);
AOP側重于橫切關注點(事務、日志、安全等,貫穿于多個模塊的功能)
小分析:
OOP在橫切關注點問題的不足是:1)代碼混亂 2)代碼分散
AOP很好的解決了這個問題,并且可以很好的解決“侵入問題”。
AOP的實現,必然要求對截獲的對象進行代理,這個地方無疑要用的是動態代理機制。
如果非要說誰是誰的實現手段,我更傾向于AOP主要應用了動態代理,動態代理是AOP的實現手段。
附記:
記得一個文章提及:
AOP是設計模式的延續;
GoF側重于接口、抽象函數來解除耦合;卻對對象的內部無能為力。
AOP卻恰恰從對象的內部著手,實現調用者和被調用者的分離。
常思考之,甚是!
Thanks?very?much?to?visit?blog,??welcome?your?feedback,??your?feedback?is?the?Driver?&&?Power?to?me.