模式是在某情景(context)下,針對某問題的某種解決方案。
- 情景就是應用某個模式的情況,這應該是會不斷出現的情況。
- 問題就是你想在某情境下達到的目標,但也可以是某情境下的約束。
- 解決方案就是你所追求的:乙個通用的設計,用來解決約束、達到目標。
建立型行為型
結構型涉及到將物件例項化,這類模式都提供乙個方法,將客戶從所需要例項化的物件中解耦。
涉及到類和物件如何互動及分配職責
結構型模式可以讓你把類或物件組合到更大的結構中。
告訴你如何採用乙個不好的解決方案解決乙個問題。
Design Pattern 工廠模式
當有一些要例項化的具體類,究竟例項化哪個類,要在執行時由一些條件來決定。當 使用大量具體類時,我們就要考慮使用工廠模式了。定義了乙個建立物件的介面,但由子類決定要例項化的類是哪乙個。工廠方法讓類把例項化推遲到子類。public abstract class pizzastore protected ...
design pattern 外觀模式
針對問題 在軟體開發系統中,客戶程式經常會與複雜系統的內部子系統之間產生耦合,而導致客戶程式隨著子系統的變化而變化。那麼如何簡化客戶程式與子系統之間的互動介面?如何將複雜系統的內部子系統與客戶程式之間的依賴解耦?為子系統中的一組介面提供乙個一致的介面,facade 模式定義了乙個高層介面,這個介面使...
design pattern 狀態模式
針對問題 有時候乙個方法可能有很多if.else來判斷狀態後再執行相關操作,當很多方法都重複的出現這樣的if.else判斷時,就可以考慮用狀態模式了。狀態模式的結構圖和策略模式一樣,事實上狀態模式和策略很相似,不同的是狀態模式除了委託狀態外,狀態實體自身持有主實體物件的引用,在狀態實體內部可以動態的...