菜鳥認知--DIP,Ioc,DI,Ioc容器
阿新 • • 發佈:2017-09-26
ron 推薦 信息 反轉 設計模式 需要 引入 str 對象的引用
DIP:依賴倒置原則
依賴倒置原則是一種設計原則,它提出可以通過反轉依賴關系來實現高內聚和低耦合。
那麽當DIP提出這種設計原則之後誰來具體實現這種原則呢,這時候引進IoC。
IoC:控制反轉
Ioc是基於DIP提出的反轉依賴的思想的設計模式,它提出了可以創建第三方來管理依賴關系。
傳統的依賴關系是:對象中創建依賴對象。
IoC的依賴關系是:當對象需要依賴的對象時,第三方創建依賴對象,交給當前對象。
自身理解:
傳統依賴關系:當我寫字的時候需要用到筆,我購買一支筆使用。
IoC依賴關系:當我寫字需要筆的時候,我向其他人借一支筆使用,筆是第三方購買的。
引用例子:
傳統依賴:當你想找個女朋友的時候,你會找個符合你標準的去搭訕,以達到目的。
IoC依賴:當你想找個女朋友時,你向第三方婚姻介紹所提交你的信息和你的要求,第三方根據你的要求推薦合適的女方給你。
DI:反轉註入
DI是IoC的具體實現。DI提供三種註入方式:1.構造器註入;2.屬性註入;2.接口註入。
它將需要依賴對象的引用註入被依賴的對象中。
IoC容器: DI的框架
當項目很大的時候,手動的DI就不合適了,因此引入IoC容器。
IoC的出現是為了提高創建DI的效率。
菜鳥認知--DIP,Ioc,DI,Ioc容器