面象对象设计6大原则之五:依赖倒置原则
轉(zhuǎn)載自?面象對象設(shè)計(jì)6大原則之五:依賴倒置原則
依賴倒置原則(DIP),The Dependency Inversion Principle
定義
1、高層模塊不應(yīng)該依賴低層模塊,兩都應(yīng)該依賴于抽象。
2、抽象不依賴于具體細(xì)節(jié)。
3、具體細(xì)節(jié)應(yīng)該依賴于抽象。
抽象就是指接口或者抽象類,細(xì)節(jié)是指實(shí)現(xiàn)接口或者抽象類的具體實(shí)現(xiàn)類。
也就是說模塊之間的依賴通過接口或抽象發(fā)生的,兩個(gè)實(shí)現(xiàn)細(xì)節(jié)之間不能直接發(fā)生依賴,接口不能依賴實(shí)現(xiàn),實(shí)現(xiàn)應(yīng)該依賴抽象。
我們在進(jìn)行分布式系統(tǒng)開發(fā)時(shí),比如常用的dubbo框架,各個(gè)系統(tǒng)的連接都是通過接口發(fā)生的,只要依賴對方的接口就行了,而不需要知道對方的實(shí)現(xiàn),更不可能依賴對方的實(shí)現(xiàn)類,在實(shí)際開發(fā)中只要其他模塊的人把接口定義好就行了,先按接口提供的參數(shù)開發(fā),等真正實(shí)現(xiàn)類都開發(fā)完了再一起聯(lián)調(diào)。其他兩條就更好理解了,依賴都只能依賴其抽象,而不是具體實(shí)現(xiàn)類。
所以,采用依賴倒置原則最大的特點(diǎn)是減少了類與類之間的耦合性,良好的支持各個(gè)模塊并行開發(fā)互不影響,也提高了系統(tǒng)的可讀性、可維護(hù)性和可擴(kuò)展性。
總結(jié)
以上是生活随笔為你收集整理的面象对象设计6大原则之五:依赖倒置原则的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 最佳鸟类标识以及如何免费制作自己的[20
- 下一篇: 面象对象设计6大原则之六:迪米特原则