您好,登錄后才能下訂單哦!
摘自大話設計模式
創建型模式
創建型模式隱藏了這些類的實例是如何被創建和放在一起,整個系統關于這些對象所知道得是由抽象類所定義的接口。這樣,創建型模式在創建什么,誰創建他,他是如何被創建的,以及何時創建這些方面提供了很大的靈活性。
創建型模式抽象了實例化的過程,他們幫助一個系統獨立于如何創建、組合和表示他的那些對象。創建型模式都會將關于該系統使用哪些具體的類的信息封裝起來,允許客戶用結構和功能差別很大的產品對象配置一個系統。配置可以是靜態的(編譯時指定),也可以是動態的(運行時指定)。
當一個系統應該獨立于它的產品創建、構成、表示時,應該考慮用創建型模式。
創建的目標是:高內聚低耦合。
1、抽象工廠模式:提供一個創建一系列或相關依賴對象的接口,而無需指定他們具體的類。
可以解決多個類型產品的創建問題。Hibernate的同一對象與多個數據庫的ORM就是通過他實現。
特點:臃腫
2、建造者模式:將一個復雜對象的構建與他的表示相分離,使得同樣的構建過程可以創建出不同的表示。
構建與表示分離,就很容易改變一個產品的內在表示,并設構建代碼和表示代碼分離。這樣對于客戶來說,他無需關心產品的創建過程,而只需要告訴指揮者需要什么,就能通過相同的建筑過程構建出不同的產品。但是很少有產品建造過程是一樣的。
3、工廠方法模式:定義一個創建對象的接口,讓子類決定實例化哪一個類,此模式讓一個類的實例化延遲到其子類。
設計一般都是從工廠開始,其他模式都是工廠方法模式的變體。當需要需要更大的靈活性的時候,往往設計會轉變為其他的創建者模式。
4、原型模式:用原型實例指定創建對象的種類,并且通過拷貝這些原型創建新的對象。
建立相應數目的原型并克隆他們通常比每次用合適的狀態手工實例化該類更方便。
5、單例模式:保證一個類只有一個實例,并提供一個全局訪問點。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。