黎克特制代換和依賴倒轉原則 二

2021-04-30 10:14:50 字數 480 閱讀 6387

上節說到開閉原則的關鍵是抽象化,有了抽象化就要有具體化,從抽象化到具體化的過程,其實也是乙個繼承關係確立的過程。無論是「實現繼承」還是「介面繼承」,在這個過程中,我們都要以黎克特制代換原則為指導:任何基類可以出現的地方,子類一定可以出現。

依賴倒轉原則也有關於抽象和具體的描述:要依賴於抽象,不要依賴於具體。這裡可以簡單點,把他看成是「要針對介面程式設計,不要針對實現程式設計」,針對介面程式設計也就是說,應當使用介面和抽象類進行變數的型別宣告、函式引數的型別宣告、函式返回型別的宣告等。不要針對實現程式設計,正好和上面說的相反,這裡不再羅嗦。如何做到依賴倒轉呢?乙個具體類要做到只實現介面和抽象類中宣告過的函式,而不應當給出多餘的函式。這個應該不難理解,具體類多出的函式,抽象類和介面是感覺不到的,因此倒轉依賴的時候便無法用到你給出的多餘的函式。

通俗的講,如果把黎克特制代換原則看作是對抽象類和具體類編寫規則的話,那麼依賴倒轉原則我們可以看作是在系統中使用這些有繼承關係的抽象類和具體類的使用規則。因此,黎克特制代換原則是依賴倒轉原則的基礎。

依賴倒轉原則 與 黎克特制代換原則

依賴倒轉原則 解釋 抽象不應該依賴細節,細節應該依賴於抽象。即,針對介面程式設計,不要對實現程式設計。實現 高層模組不應該依賴低層模組。兩個都應該依賴抽象。抽象不應該依賴細節。細節應該依賴抽象。價值 依賴倒轉是物件導向設計的標誌。如果編寫程式時考慮的都是如何針對抽象程式設計而不是針對細節程式設計。即...

設計模式原則 依賴倒轉 黎克特制代換原則

設計模式一共有六大原則 單一原則 開放封閉原則 介面分離原則 黎克特制替換原則 最少知識原則 依賴倒置原則。依賴倒轉原則 高層模組不應該依賴於低層模組,兩者都應該依賴於抽象。抽象不應該依賴細節,細節應該依賴抽象。在物件導向程式設計領域中,依賴反轉原則 dependency inversion pri...

依賴倒轉原則和黎克特制轉換原則

依賴倒轉原則 a.高層模組不應該依賴低層模組。兩個都應該依賴抽象。分析 被呼叫的是低層模組。如果依賴低層模組,這樣造成緊耦合,修改任何部分都會影響其他部分。就像電腦中的cpu,記憶體,都依賴具體的主機板,主機板一壞,所有的部件都沒用了,這不合理。反過來,如果記憶體壞了,也不應該導致其他部件不能用。所...