【六大原則】:
(1)單一原則 (srp)
乙個類只做一件事
(2)開放-封閉原則(ocp)
軟體實體(類、模組、函式)可以拓展,但是不可修改
(3)依賴倒轉原則(dip)
a.高層模組不應該依賴底層,兩個都應該依賴抽象。b.抽象不應該依賴細節,細節依賴抽象
(4)黎克特制代換原則(lsp)
子型別必須能夠替換掉它們的父型別
(5)迪公尺特法則(lod)
如果兩個類不必直接通訊,那麼這兩個類不應當發生直接的相互作用。如果其中乙個類需要呼叫另乙個類的某乙個方法的話,可通過第三者發起這個呼叫
(6)合成/聚合復用原則(carp)
盡量使用合成/聚合,盡量不要使用類繼承
【型別】
建立型模式,就是建立物件的模式,抽象了例項化的過程。
結構型模式是為解決怎樣組裝現有的類,設計他們的互動方式,從而達到實現一定的功能的目的。用來處理類或者物件的組合
行為型模式涉及到演算法和物件間職責的分配,描述了物件和類的模式,以及它們之間的通訊模式。用來對類或物件怎樣互動和 怎樣分配職責進行描述
建立型模式,共五種:工廠方法模式、抽象工廠模式、單例模式、建造者模式、原型模式。
結構型模式,共七種:介面卡模式、**模式、外觀模式、組合模式、享元模式、裝飾器模式、橋接模式。
行為型模式,共十一種:策略模式、備忘錄模式、中介者模式、責任鏈模式、觀察者模式、模板方法模式、迭代子模式、命令模 式、狀態模式、訪問者模式、直譯器模式。
【參考】
設計模式 設計模式原則
1 單一職責原則 srp 乙個類應當只有乙個引起其變化的原因。使用單一職責原則的好處有 1 類的複雜性降低 2 可讀性提高 3 可維護性提高 4 變更引起的風險降低 2 黎克特制替換原則 lsp 在使用父類的地方,可以使用其子類替換。黎克特制替換原則的含義 1 子類必須完全實現父類的方法 2 子類可...
設計模式 設計原則
1.單一職責原則 single responsibility principle,簡稱srp 就乙個類而言,應該僅有乙個引起它變化的原因。如果乙個類承擔的職責過多,就等於把這些職責耦合在一起,乙個職責的變化可能會削弱或抑制這個類完成其他職責的能力。這種耦合會導致脆弱的設計,當變化發生時,設計會遭受到...
設計模式 設計原則
description 這是本人學習 設計模式之禪 的筆記 設計原則 一 單一職責 應該有且僅有乙個原因讓乙個類發生變更。這個原則目的是要讓介面的職責分明,結構清晰。優點 類的複雜度降低,可讀性提高,變更風險低,可維護性提高。二 黎克特制替換 通俗一點就是父類存在的地方,可以替換為子類,而程式的行為...