依賴倒轉原則

2021-10-01 12:18:32 字數 713 閱讀 7264

依賴倒轉原則

依賴倒轉原則,意思就是抽象不應該依賴細節,細節應該依賴抽象,說白了,就是要針對介面程式設計,不要對實現程式設計。

為什麼要叫「倒轉」

面向過程開發時,為了使**可以復用,一般會把常用的**封裝成許多函式的程式庫,這樣再寫新專案時這些底層**也可以使用,這種情況就是高層模組依賴底層模組,這屬於「正」,但是如果有乙個新專案,發現業務邏輯的高層模組基本一樣,但是要求使用不同的資料庫或者儲存方式,這樣就有問題了,因為高層依賴底層,業務邏輯與底層訪問資料庫繫結在一起,所以沒辦法服用這些業務邏輯**,這就屬於「倒轉」,正常情況下,因為高層模組經常性的改變,需要復用底層,所以高層依賴底層沒問題,但是特殊情況下,底層模組要改變,需要復用高層,這樣就需要考慮「倒轉」。所以,高層模組不應該依賴於底層模組,它們都應該依賴抽象,具體就是依賴介面或者抽象類。,這樣無論時高層**還是底層**都很容易復用。

依賴抽象,不怕更改,原因二——黎克特制代換原則

黎克特制代換原則:簡單來說就是子類必須能夠替換掉他們的父型別,再簡單來說,就是子類必須包含他的父型別中的所有「東西」。

正因為有了這個原則,所以父類才能真正被復用,子類才能在父類的基礎上,增加自己新的行為,正因為這樣依賴抽象,才不怕更改,一是因為抽象更改的可能性本來就跟小,如果更改了,因為底層繼承於抽象,所以底層無需改變(子類包含父類的所有東西)

依賴倒轉原則

1 所謂依賴倒置原則 dependence inversion principle 就是要依賴於抽象,不要依賴於具體。簡單的說就是要求對抽象進行程式設計,不要對實現進行程式設計,這樣就降低了客戶與實現模組間的耦合。2 面向過程的開發,上層呼叫下層,上層依賴於下層,當下層劇烈變動時上層也要跟著變動,這...

依賴倒轉原則

一 什麼是依賴倒轉原則?抽象不應當依賴於細節 細節應當依賴於抽象 或者說 要針對介面程式設計,不要針對實現程式設計 二 為什麼叫做依賴倒轉原則?傳統的過程性系統設計傾向於使高層次的模組依賴於低層次的模組 抽象層次依賴於具體層次。依賴倒轉原則就是要把這種依賴關係倒轉。抽象層包含的是系統的商務邏輯和巨集...

依賴倒轉原則

要點 舊版 public class dependecyinversion class email 完成person接收訊息的功能 方式1分析 1.簡單,比較容易想到 3.解決思路 引入乙個抽象的介面ireceiver,表示接收者,這樣person類與介面ireceiver發生依賴 因為email,...