設計模式原則

2021-08-19 01:48:01 字數 912 閱讀 9211

【六大原則】:

(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 這是本人學習 設計模式之禪 的筆記 設計原則 一 單一職責 應該有且僅有乙個原因讓乙個類發生變更。這個原則目的是要讓介面的職責分明,結構清晰。優點 類的複雜度降低,可讀性提高,變更風險低,可維護性提高。二 黎克特制替換 通俗一點就是父類存在的地方,可以替換為子類,而程式的行為...