設計模式介紹

2021-09-02 22:17:40 字數 1134 閱讀 1699

1 簡介

設計模式是一套被反覆使用、多數人知曉的、經過分類編目的、**設計經驗的總結。使用設計模式是為了可重用**、讓**更容易被他人理解、保證**可靠性。毫無疑問設計模式於己於他人於系統都是多贏的;設計模式使**編制真正工程化;

2 分類

(1)建立型模式: 通常和物件的建立有關,涉及到物件例項化的方式。(共5種模式)

(2)結構型模式: 描述的是如何組合類和物件以獲得更大的結構。(共7種模式)

(3)行為型模式: 用來對類或物件怎樣互動和怎樣分配職責進行描述。(共11種模式)

3 設計模式基本原則(solid)

(1)單一職責原則 (srp,single responsibility principle)

類的職責要單一,對外只提供一種功能,而引起類變化的原因都應該只有乙個。

(2) 開放封閉原則 (ocp,open for extension, closed for modification principle)

類的改動是通過增加**進行的,而不是修改源**。

(3) 黎克特制替換原則 (lsp, liskov substitution principle)

任何抽象類出現的地方都可以用他的實現類進行替換。實際就是虛擬機制,語言級別實現物件導向功能。

(4)介面隔離原則 (isp,inte***ce segegation principle)

不應該強迫客戶的程式依賴他們不需要的介面方法。乙個介面應該只提供一種對外功能,不應該把所有操作都封裝到乙個介面中去。

(5)依賴倒置原則 (dip,dependence inversion principle)

抽象不應該依賴於細節,細節應當依賴於抽象。換言之,要針對介面程式設計,而不是針對實現程式設計。

(6)迪公尺特法則(lod,law of demeter)

乙個物件應當對其他物件盡可能少的了解,從而降低各個物件之間的耦合,提高系統的可維護性。

例如在乙個程式中,各個模組之間相互呼叫時,通常會提供乙個統一的介面來實現。這樣其他模組不需要了解另外乙個模組的內部實現細節,這樣當乙個模組內部的實現發生改變時,不會影響其他模組的使用。(黑盒原理)

4 最終目的:高內聚,低耦合

設計模式介紹

我的設計模式入門是head first pattern,可以說是比較好的入門書籍,教程上講解了常用的設計模式,並不全面。作為入門足夠,通俗易懂。設計模式 design pattern 是一套被反覆使用 多數人知曉的 經過分類的 設計經驗的總結。使用設計模式的目的 為了 可重用性 讓 更容易被他人理解...

設計模式介紹

每乙個模式描述了乙個在我們周圍不斷重 生的問題,以及該問題的解決方案的核心。這樣,你就能一次又一次地使用該方案而不必做重複勞動 christopher alexander 人們面對複雜性有乙個常見的做法 即分而治之,將大問題分解為多個小問題,將複雜問題分解為多個簡單問題。分解抽象 更高層次來講,人們...

設計模式 常用的設計模式介紹

簡單點說,就是乙個應用程式中,某個類的例項物件只有乙個,你沒有辦法去new,因為構造器是被private修飾的,一般通過getinstance 的方法來獲取它們的例項。getinstance 的返回值是乙個物件的引用,並不是乙個新的例項 懶漢式 執行緒不安全 public class singlet...