Spring:IOC與AOP的個人理解

IOC:控制反轉(又名:依賴注入)

正常情況下(無IOC):
你製作一件傢俱
你需要錘子,自己去找錘子
你需要扳手,自己去找扳手
你需要鋸子,自己去找鋸子
傢俱完成了

IOC情況下:
製作前,你把錘子,扳手,鋸子給管家(所以稱爲:依賴注入)
你製作一件傢俱
你需要錘子,管家遞給你錘子(所以稱爲:控制反轉)
你需要扳手,管家遞給你扳手
你需要鋸子,管家遞給你鋸子
傢俱完成了

你管家就是Spring,錘子,扳手,鋸子就是各類方法,你把各類方法依賴注入給Spring,他幫你管理,你自己不用控制了,就是控制反轉。你是不是就輕鬆了許多?

AOP:面向切面編程

你經營一家一個人的公司
你需要自己做產品,設計,開發,招人,理財

你經營一家AOP公司
你把開發交給了產品經理(把各種方法代碼封裝成切面類
你把員工交給了人事經理
你把財務交給了財務經理

有一天,你開一道新的產品線(開一個新的事件
你覺得需要運營,你把市場經理招進來了(添加新的切面類
你覺得人事經理不行,你把人事經理換了(修改以前的切面類

AOP就在於讓你明確關注點,爲你提供事務的管理,明確現在的事情,其他事情交給Spring去做。

發佈了32 篇原創文章 · 獲贊 33 · 訪問量 37萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章