DI(依赖注入)简单理解 NO1
依賴(lài)注入:目的削減程序的耦合度,達(dá)到高內(nèi)聚/低耦合 ?
常用形式:Interface Driven Design接口驅(qū)動(dòng),接口驅(qū)動(dòng)有很多好處,可以提供不同靈活的子類(lèi)實(shí)現(xiàn),增加代碼穩(wěn)定和健壯性等等。
通過(guò)IoC模式可以徹底解決這種耦合,它把耦合從代碼中移出去,放到統(tǒng)一的XML 文件中,通過(guò)一個(gè)容器在需要的時(shí)候把這個(gè)依賴(lài)關(guān)系形成,即把需要的接口實(shí)現(xiàn)注入到需要它的類(lèi)中,這可能就是“依賴(lài)注入”說(shuō)法的來(lái)源了
因?yàn)榘褜?duì)象生成放在了XML里定義,所以當(dāng)我們需要換一個(gè)實(shí)現(xiàn)子類(lèi)將會(huì)變成很簡(jiǎn)單(一般這樣的對(duì)象都是實(shí)現(xiàn)于某種接口的),只要修改XML就可以了,
具體實(shí)現(xiàn):依賴(lài)注入就是給一個(gè)對(duì)象傳入一個(gè)實(shí)例變量。一般采用構(gòu)造函數(shù)注入
依賴(lài)注入就是傳遞一個(gè)實(shí)例變量。 但是這個(gè)變量一般是一個(gè)實(shí)例 往往放置一個(gè)接口 這樣子的話 只要是實(shí)現(xiàn)了接口中的方法的子類(lèi)都可以傳遞過(guò)來(lái) ,實(shí)現(xiàn)的方法不同 所以在拿到這個(gè)實(shí)例的時(shí)候 調(diào)用接口中的方法 進(jìn)行的操作也就不同,這樣就直接把 這個(gè)切入到程序中的變量和這個(gè)類(lèi)進(jìn)行了分離 不再進(jìn)行強(qiáng)耦合的new關(guān)聯(lián)在一起
一位名字有點(diǎn)模糊的大神把依賴(lài)注入的方式分為3類(lèi)
1.接口注入
2.設(shè)值注入
3.構(gòu)造方法注入
轉(zhuǎn)載于:https://www.cnblogs.com/One-dream-man/p/3722876.html
總結(jié)
以上是生活随笔為你收集整理的DI(依赖注入)简单理解 NO1的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: shell date
- 下一篇: 同步函数与同步代码块的区别