設計模式 依賴倒置 DIP

2021-09-02 22:30:21 字數 492 閱讀 5140

高層次的模組不應該依賴 於 低層次的模組,兩者都應該依賴於 抽象介面。

抽象的介面不應該依賴於具體的實現,而具體的實現依賴於抽象的介面

這個可能和我們常見的【熟能生巧】成為反比,平時我們設計了很多具體實現,才慢慢發現,其中的道,於是後來就抽象出來一種靈巧的方式,完成我們的工作;

但是在快速,協作的開發環境中,我們最好的方式是: 先抽象好,再去落地具體實現。

總結:我們設計抽象介面的時候,不應該是憑藉眾多具體的實現,再慢慢提取出乙個現有眾多實現的乙個抽象,而是我們先提出乙個約定,也就是先提出乙個抽象的介面,(這個介面可能不能滿足具體實現的某個功能,但是介面隔離原則允許我們這樣做),然後我們再根據這個抽象介面去設計具體的實現;這樣做的好處就是,我們後期只需要面對乙個單獨的抽象介面進行業務的更迭,變化,而不用去考慮業務的改變對已有**的具體實現的影響。具體的實現在約定的框架下做任何變動,不會影響更上層的設計。

設計模式原則 依賴倒置原則(DIP)

定義 高層模組不應該依賴低層模組,二者都應該依賴其抽象 抽象不應該依賴細節 細節應該依賴抽象。問題由來 類a直接依賴類b,假如要將類a改為依賴類c,則必須通過修改類a的 來達成。這種場景下,類a一般是高層模組,負責複雜的業務邏輯 類b和類c是低層模組,負責基本的原子操作 假如修改類a,會給程式帶來不...

依賴倒置原則 DIP

一 dip簡介 dip dependency inversion principle 1 高層模組不應該依賴於低層模組,二者都應該依賴於抽象。2 抽象不應該依賴於細節,細節應該依賴於抽象。高層模組包含了乙個應該程式中的重要的策略選擇和業務模型,正是這些高層模組才使得其所有的應用程式區別於其他,如果高...

DIP依賴倒置原則

1.高層模組不應該依賴低層模組,二者都應該依賴抽象 2.抽象不應該依賴於細節。細節應該依賴於抽象 1.簡單介紹 結構良好的物件導向架構都具有清晰的層次定義,每個層次通過乙個定義良好的 受控的介面向外提供了一組內聚的服務。對於這個陳述的簡單理解可能會致使設計者設計出類似下圖的結構。圖中,高層的poli...