ioc 容器 白話版

IOC 亦稱“依賴倒置原則”。

?維基百科對其概述位指一種特定的解耦(傳統(tǒng)的依賴關(guān)系創(chuàng)建在高層次上,而具體的策略設(shè)置則應(yīng)用在低層次的模塊上)形式,使得高層次的模塊不依賴于低層次的模塊的實(shí)現(xiàn)細(xì)節(jié),依賴關(guān)系被顛倒(反轉(zhuǎn)),從而使得低層次模塊依賴于高層次模塊的需求抽象。 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

大白話就是解耦組件之間的關(guān)系。比如現(xiàn)在二狗有一對阿迪王,但是了這對阿迪王沒有鞋帶,二狗要去買一條白色鞋帶,這樣就組成了一對白色鞋帶+阿迪王 ,這種組合經(jīng)常在鞋店看到,這種情況二狗就賴得自己去買鞋帶了,直接買一雙這樣的阿迪王就好了,花心的二狗,第二天二狗就不喜歡白色的鞋帶了,二狗要藍(lán)色的,剛好鞋店又有這樣的款式,二狗不可能這么傻的又買一雙吧,二狗只要藍(lán)色鞋帶而已,所有這種情況基本上來說阿迪王跟鞋帶解耦了。說的這么多還不如直接上代碼好呢。。。。


二狗真的好傻 居然為了要一雙藍(lán)色鞋帶的阿迪王真的去買了。。。

在二狗的思想了鞋帶跟鞋子是一體的不能分割的耦合性很強(qiáng)的,但是二狗發(fā)現(xiàn)自己不是富二代,也發(fā)現(xiàn)自己的思想錯(cuò)了,鞋子跟鞋帶是可以分開的(解耦),只要自己喜歡什么顏色的自己的弄就好了。



阿迪王不依賴鞋帶的顏色,只要給鞋帶就行,”使得高層次的模塊不依賴于低層次的模塊的實(shí)現(xiàn)細(xì)節(jié)“


低層次模塊依賴于高層次模塊的需求抽象

直接引用維基百科中的圖

上面所說的直接將組件之間解耦了,但是還沒有說到IOC容器如何方便我們開發(fā)呢。其實(shí)一開始的時(shí)候二狗的思想是對的,他只要一雙白色鞋帶的阿迪王,鞋店直接給他就行了,下次二狗要換一雙藍(lán)色的阿迪王的時(shí)候,鞋店幫二狗的阿迪王換了藍(lán)色的鞋帶就好了,二狗不用關(guān)心自己會不會穿鞋帶,鞋店直接幫他做好了。鞋店充當(dāng)ioc容器,二狗只要提供想要的對象,鞋店直接提供了。


ioc容器幫處理好對象之間的關(guān)系?

其實(shí)這樣看就好Ioc容器就是一座bean工廠,幫我們生產(chǎn)我們要的東西。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容