設計模式 - 概述



設計模式代表了經驗豐富的面向物件軟體開發人員使用的最佳實踐。設計模式是對軟體開發人員在軟體開發過程中遇到的普遍問題的解決方案。這些解決方案是眾多軟體開發人員在相當長的一段時間內透過反覆試驗獲得的。

什麼是四人幫 (GOF)?

1994 年,四位作者 Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides 出版了一本書,名為設計模式 - 可複用面向物件軟體的基礎,該書開啟了軟體開發中設計模式的概念。

這些作者被統稱為四人幫 (GOF)。根據這些作者的說法,設計模式主要基於以下面向物件設計原則。

  • 面向介面程式設計,而非面向實現程式設計

  • 優先使用組合而非繼承

設計模式的用途

設計模式在軟體開發中主要有兩個用途。

開發者之間的通用平臺

設計模式提供了一種標準術語,並且特定於特定場景。例如,單例設計模式表示使用單個物件,因此所有熟悉單例設計模式的開發人員都將使用單個物件,並且他們可以互相告知程式正在遵循單例模式。

最佳實踐

設計模式經過了長時間的演變,它們為軟體開發過程中遇到的某些問題提供了最佳解決方案。學習這些模式可以幫助沒有經驗的開發人員以簡單快捷的方式學習軟體設計。

設計模式的型別

根據設計模式參考書設計模式 - 可複用面向物件軟體的基礎,共有 23 種設計模式,可以分為三類:建立型、結構型和行為型模式。我們還將討論另一類設計模式:J2EE 設計模式。

序號模式及描述
1建立型模式
這些設計模式提供了一種建立物件的方式,同時隱藏建立邏輯,而不是直接使用 new 運算子例項化物件。這使程式在決定為給定用例需要建立哪些物件方面具有更大的靈活性。
2結構型模式
這些設計模式涉及類和物件組合。繼承的概念用於組合介面並定義組合物件以獲得新功能的方式。
3行為型模式
這些設計模式專門關注物件之間的通訊。
4J2EE 模式
這些設計模式專門關注表示層。這些模式由 Sun Java 中心識別。
廣告