設計模式描述了對象如何進行通信才能不牽涉互相的資料模型和方法。
保持這種獨立性(低耦合)一直是面向對象程式設計的目标;
"Design Patterns: Elements of Resualbel Software"一書将設計模式歸納為三大類型,共23種:
建立型模式:通常和對象的建立有關,設計到對象執行個體化的方式。(共5種模式)
行為型模式:通常和對象間通信有關。(共11種)
結構型模式:描述的是如何組合類和對象以獲得更大的結構(共7種)
類模式描述的是如何使用繼承提供了更有用的程式接口。
而對象模式描述的是如何通過使用對象組合或将對象包含在其他對象裡,将對象組合成更大的一個結構。