Java 程式設計/設計模式
外觀
設計模式並非最終的設計,而是一種對常見問題解決方案的描述。設計模式可以在多個應用程式中重複使用,這是使用它的主要優勢。它也可以被看作是解決可以在許多不同情況和/或應用程式中出現的問題的模板。它不是程式碼重用,因為它通常不指定程式碼,但程式碼可以輕鬆地從設計模式創建出來。面向物件的設計模式通常顯示類或物件之間的關係和互動,而無需指定最終的應用程式類或物件。
每個設計模式都包含以下部分
- 問題/需求
- 為了建立設計模式,我們需要進行小型分析設計,並可能進行編碼以測試解決方案。本節說明要解決的問題的需求。這通常是一個在多個應用程式中出現的常見問題。
- 約束
- 本節說明幫助和指導解決方案建立的技術邊界。
- 解決方案
- 本節描述如何編寫程式碼來解決上述問題。這是設計模式的設計部分。它可能包含類圖、時序圖,以及描述如何編碼解決方案所需的任何其他內容。
設計模式可以被認為是可以在您的設計文件中放置的塊,您需要使用您的應用程式來實現設計模式。
使用設計模式可以加快您的設計速度,並有助於向其他團隊成員傳達您的設計。
設計模式並不總是容易理解,因為它是一種程式設計的理論視角。您必須區分抽象和表示。例如,我們有一個實現加法的函式
public int add(int a, int b) {
return a + b;
}
|
- 抽象只是您程式碼在外部可見的部分。它是提供者和客戶端程式碼之間的契約。在 Java 中,這個理論概念主要是類或介面的方法簽名。
- 表示是解決問題的方式。它遵循作為輸入提供的以及預期返回的內容的契約。在 Java 中,這個理論概念主要是類中的程式碼行以及對其他方法或類的任何內部呼叫。
public abstract int add(int a, int b);
|
public int add(int a, int b) {
return a + b;
}
|
| 抽象 | 表示 |