AOP面向切面程式設計(個人理解)

2021-06-27 15:11:15 字數 579 閱讀 8949

面向切面程式設計的目標就是分離關注點。什麼是關注點呢,就是你要做的事,就是關注點。假如你是個公子哥,沒啥人生目標,天天就是衣來伸手,飯來張口,整天只知道玩一件事!那麼,每天你一睜眼,就光想著吃完飯就去玩(你必須要做的事),但是在玩之前,你還需要穿衣服、穿鞋子、疊好被子、做飯等等等等事情,這些事情就是你的關注點,但是你只想吃飯然後玩,那麼怎麼辦呢?這些事情通通交給別人去幹。在你走到飯桌之前,有乙個專門的僕人a幫你穿衣服,僕人b幫你穿鞋子,僕人c幫你疊好被子,僕人c幫你做飯,然後你就開始吃飯、去玩(這就是你一天的正事),你幹完你的正事之後,回來,然後一系列僕人又開始幫你幹這個幹那個,然後一天就結束了!

aop的好處就是你只需要**的正事,其它事情別人幫你幹。也許有一天,你想裸奔,不想穿衣服,那麼你把僕人a解雇就是了!也許有一天,出門之前你還想帶點錢,那麼你再僱乙個僕人d專門幫你幹取錢的活!這就是aop。每個人各司其職,靈活組合,達到一種可配置的、可插拔的程式結構。

從spring的角度看,aop最大的用途就在於提供了事務管理的能力。事務管理就是乙個關注點,你的正事就是去訪問資料庫,而你不想管事務(太煩),所以,spring在你訪問資料庫之前,自動幫你開啟事務,當你訪問資料庫結束之後,自動幫你提交/回滾事務!

AOP面向切面程式設計理解(個人)

aop的官方解釋指出aop可以對業務邏輯的各個方面進行隔離,從而使得業務邏輯各部分之間的耦合度降低,提高程式的可重用性,同時提高了開發的效率。軟體開發追求的是高內聚 低耦合。spring框架就是為了盡可能的降低程式的耦合度。ioc是降低了類的建立,及類之間引用的耦合度。當某個類的功能需要增強時,使用...

簡單理解AOP(面向切面程式設計)

aop為aspect oriented programming的縮寫,意為 面向切面程式設計,通過預編譯方式和執行期動態 實現程式功能的統一維護的一種技術。aop與oop是面向不同領域的兩種設計思想。oop 物件導向程式設計 針對業務處理過程的實體及其屬性和行為進行抽象封裝,以獲得更加清晰高效的邏輯...

簡單理解AOP(面向切面程式設計)

aop為aspect oriented programming的縮寫,意為 面向切面程式設計,通過預編譯方式和執行期動態 實現程式功能的統一維護的一種技術。aop與oop是面向不同領域的兩種設計思想。oop 物件導向程式設計 針對業務處理過程的實體及其屬性和行為進行抽象封裝,以獲得更加清晰高效的邏輯...