建立型設計模式總結
Intro
前面幾篇文章已經把建立型設計模式都介紹了,來做一個簡單的總結。
建立型設計模式,就是用來建立對象的設計模式,根據要建立的對象的複雜度以及是否允許多執行個體以及是否需要容易擴充等多方面考慮去選擇合适的設計模式來建立對象。
Summary
單例模式(Singleton)
需要保證保證一個類僅有一個執行個體的時候需要考慮使用單例模式,搭配依賴注入架構使用會更香哈
原型模式(Prototype)
對象頻繁複制,對象的大多數元素(屬性/字段)相同,需要頻繁建立對象考慮使用原型模式,讓對象建立更容易,需要注意深複制淺複制差別
建造者模式(Builder)
對象比較複雜,需要大量的配置參數,建立過程複雜,考慮使用建造者模式,讓複雜的建立過程簡單化
抽象工廠(AbstractFactory)
抽象工廠,提供一系列相關或互相依賴對象的接口,而無需指定他們具體的類,由具體的工廠建立具體類型的執行個體
工廠方法(FactoryMethod)
工廠方法模式定義一個用于建立對象的接口,讓子類決定執行個體化哪一個類,工廠方法使一個類的執行個體化延遲到子類。
類的建立由具體的工廠相應的方法建立具體的執行個體
More
抽象工廠的工廠是類;工廠方法的工廠是方法。
抽象工廠關鍵在于産品之間的抽象關系,是以一般至少要兩個産品;工廠方法在于生成産品,不關注産品間的關系,是以可以隻生成一個産品。
Reference
- https://www.cnblogs.com/weihanli/p/factory-patterns.html
- https://www.cnblogs.com/weihanli/p/13303393.html
- https://www.cnblogs.com/weihanli/p/prototype-pattern.html
- https://www.cnblogs.com/weihanli/p/builder-pattern.html
- https://github.com/WeihanLi/DesignPatterns
本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接配接,否則保留追究法律責任的權利。