設計模式學習 設計原則

2021-07-11 14:42:48 字數 933 閱讀 5864

單一職責原則: 就乙個類而言,應該僅有乙個引起他變化的原因

如果乙個類承擔的職責過多,就等於把這些職責耦合在一起,乙個職責的變化可能會削弱或者抑制這個類完成其他職責的能來,這種耦合會導致脆弱的設計,當變化發生時,設計會遭受意想不到的破壞

如果你能想到多於乙個的動機去改變乙個類,那麼這個類就具有多餘乙個的職責,就應該考慮類的職責分離

開放封閉原則: 就是誰軟體實體可以擴充套件,但是不可修改

也就是說,在設計的時候,時刻要考慮,盡量讓這個類足夠好,寫好了就不要去修改了,如果新需求來了,我們增加一些類就完事了,原來的**能不動就不動

無論模組是對麼的封閉,都會存在一些無法對之封閉的變化,既然不可能完全封閉,設計人員必須對其設計的模組應該對那種變化封閉作出選擇,必須先猜測出最可能發生的變化種類,然後構造抽象來隔離這些變化

開放-封閉原則是面相物件設計的核心所在,遵循這個原則可以帶來面相物件技術說聲稱的巨大好處,也即使可維護,可擴充套件,可復用,靈活性好,開發中應該對程式中呈現出頻繁變化的那些部分作出抽象,然而,對於程式中的每個部分都刻意進行抽象同樣不是乙個好主意,.

依賴倒轉原則: 高層模組不應該依賴底層模組,兩個都應該依賴抽象;  抽象不應該依賴細節,細節應該依賴抽象

黎克特制替換原則: 子型別必須能夠替換掉他們的父型別,

如果編寫時考慮的都是如何針對抽象程式設計而不是針對細節程式設計,即程式中所有的依賴關係都是終止如抽象類或者介面,那即使面相物件的設計,反之那就是過程化的設計了.

迪公尺特原則: 如果兩個類不必比車直接通訊,那麼這兩個類就不應發生直接的相互作用,如果其中乙個類需要條用另乙個類的某個方法的話,可以通過第三者**這個呼叫.

類之間的耦合越弱,越有利於復用,乙個處於弱耦合的類被修改,不會對有關係的類造成波及

設計模式學習筆記 設計原則

設計模式是一套物件導向的 設計經驗總結,是在程式設計領域被反覆使用,被多數人知曉,而且經過分類整理的 設計方法。使用設計模式是為了可重用 讓 更容易被他人理解 保證 可靠性。1設計原則 六大設計原則 單一職責原則,黎克特制代換原則,開放 封閉原則,依賴倒轉原則,合成 聚合復用原則,迪公尺特法則 單一...

設計模式 設計模式原則

1 單一職責原則 srp 乙個類應當只有乙個引起其變化的原因。使用單一職責原則的好處有 1 類的複雜性降低 2 可讀性提高 3 可維護性提高 4 變更引起的風險降低 2 黎克特制替換原則 lsp 在使用父類的地方,可以使用其子類替換。黎克特制替換原則的含義 1 子類必須完全實現父類的方法 2 子類可...

設計模式 設計原則

1.單一職責原則 single responsibility principle,簡稱srp 就乙個類而言,應該僅有乙個引起它變化的原因。如果乙個類承擔的職責過多,就等於把這些職責耦合在一起,乙個職責的變化可能會削弱或抑制這個類完成其他職責的能力。這種耦合會導致脆弱的設計,當變化發生時,設計會遭受到...