《大話設計模式》讀書筆記 第5章 依賴倒轉原則

2022-04-02 20:04:04 字數 505 閱讀 3595

1.依賴倒轉原則,也叫依賴倒置原則,即高層模組不應該依賴低層模組,兩個都應該依賴抽象;抽象不應該依賴細節,細節應該依賴於抽象。說白了就是要針對介面程式設計,不要對實現程式設計。

2.黎克特制代換原則(lsp):子型別必須能夠替換掉它們的父型別。即乙個軟體實體如果使用的是乙個父類的話,那麼一定適用其子類,而且它察覺不出父類物件和子類物件的區別,也就是說,在軟體裡面,把父類替換成她的子類,程式的行為沒有變化。

3.只有當子類可以替換掉父類,軟體單位的功能不受到影響時,父類才能真正被復用,而子類也能夠在父類的基礎上增加新的行為。

4.如下圖,高層模組不依賴低層模組,兩個都依賴抽象。

5.依賴倒轉其實可以說是物件導向設計的標誌,用哪種語言來編寫程式不重要,如果編寫時考慮的都是如何針對抽象程式設計而不是針對細節程式設計,即程式中所有的依賴關係都是終止於抽象類或者介面,那就是物件導向的設計,反之那就是過程化的設計了。

《大話設計模式》讀書筆記 第26章 享元模式

1 享元模式 flyweight 運用共享技術有效地支援大量細粒度的物件。2 享元模式 flyweight 結構圖 3 內部狀態與外部狀態 在享元物件內部並且不會隨環境改變而改變的共享部分,可以稱為是享元物件的內部狀態,而隨環境改變而改變的 不可以共享的狀態就是外部狀態了。4 事實上,享元模式可以避...

《大話設計模式》讀書筆記 第24章 職責鏈模式

1 職責鏈模式 chain of responsibility 使多個物件都有機會處理請求,從而避免請求的傳送者和接受者之間的耦合關係。將這個物件連成一條鏈,並沿著這條鏈傳遞該請求,直到有乙個物件處理它為止。2 職責鏈模式 chain of responsibility 結構圖 3 當客戶提交乙個請...

《大話設計模式》讀書筆記 第22章 橋接模式

1 合成 聚合復用原則 carp 盡量使用合成 聚合,盡量不要使用類繼承。2 合成 聚合復用原則的好處 優先使用物件的合成 聚合將有助於你保持每個類被封裝,並被集中在單個任務上。這樣類和類繼承層次會保持較小規模,並且不太可能增長為不可控制的龐然大物。3 橋接模式 bridge 將抽象部分與它的實現部...