設(shè)計(jì)模式解密(6) - 建造者模式(生成器模式)
1、簡(jiǎn)介
定義:將一個(gè)復(fù)雜對(duì)象的構(gòu)建與它的表示分離,使得同樣的構(gòu)建過(guò)程可以創(chuàng)建不同的表示。
分解一下定義:
1、復(fù)雜對(duì)象的表示;
2、復(fù)雜對(duì)象的構(gòu)建過(guò)程;
3、可分離的通用構(gòu)建過(guò)程,也適用于其它復(fù)雜對(duì)象的表示;
4、適用于一些基本部件不會(huì)變,而其組合經(jīng)常變化的時(shí)候。
英文:Builder
類(lèi)型:創(chuàng)建類(lèi)模式
2、原理及組成
引:類(lèi)圖
四個(gè)要素:
產(chǎn)品類(lèi):一般是一個(gè)較為復(fù)雜的對(duì)象,也就是說(shuō)創(chuàng)建對(duì)象的過(guò)程比較復(fù)雜,一般會(huì)有比較多的代碼量。在本類(lèi)圖中,產(chǎn)品類(lèi)是一個(gè)具體的類(lèi),而非抽象類(lèi)。
實(shí)際編程中,產(chǎn)品類(lèi)可以是由一個(gè)抽象類(lèi)與它的不同實(shí)現(xiàn)組成,也可以是由多個(gè)抽象類(lèi)與他們的實(shí)現(xiàn)組成。
抽象建造者:引入抽象建造者的目的,是為了將建造的具體過(guò)程交與它的子類(lèi)來(lái)實(shí)現(xiàn)。這樣更容易擴(kuò)展。
一般至少會(huì)有兩個(gè)抽象方法,一個(gè)用來(lái)建造產(chǎn)品,一個(gè)是用來(lái)