一、概念:
將一個復雜對象的構(gòu)建與它的表示分離术裸,使得同樣的構(gòu)建過程可以創(chuàng)建不同的表示。
二袭艺、應用場景:
1 當創(chuàng)建復雜對象的算法應該獨立于該對象的組成部分以及它們的裝配方式時。
2 當構(gòu)造過程必須允許被構(gòu)造的對象有不同表示時
三瘤睹、角色:
1 Builder:為創(chuàng)建一個產(chǎn)品對象的各個部件指定抽象接口答倡。
2 ConcreteBuilder:實現(xiàn)Builder的接口以構(gòu)造和裝配該產(chǎn)品的各個部件,定義并明確它所
創(chuàng)建的表示瘪撇,并 提供一個檢索產(chǎn)品的接口港庄。
3 Director:構(gòu)造一個使用Builder接口的對象恕曲。
4 Product:表示被構(gòu)造的復雜對象。ConcreteBuilder創(chuàng)建該產(chǎn)品的內(nèi)部表示并定義它的
裝配過程佩谣,包含定義組成部件的類,包括將這些部件裝配成最終產(chǎn)品的接口吊履。