1. 程式人生 > >對建造者模式的理解

對建造者模式的理解

建造者模式:我們有這樣的一個場景,我們有多 變的產品,有多變的建造者,這個時候我們完全可以按照工廠方法模式來設計,但是當我們還需要對建造者進行某些建造過程變化的靈活控制的時候,這個時候我們就可以對建造者這個類封裝到一個Director的類中,在這個Director類中我們可以對建造者的行為進行一個可變因素的控制。這裡其實我們是對物件的不同維度上的擴充套件,其實這個時候我們完全可以只在建造者和產品的子類上通過抽象類來擴充套件,但是這樣的擴充套件增加了複雜性,而且改變的話會導致整個所有的產品和建造者都需要改變,非常複雜麻煩。我們這裡使用一個統一的Director類來統一管理,解決了建造者與產品共性問題,也解決了變化的部分,而且管理非常的方便簡單,只需要對這個類改變就可以了。當系統複雜的時候,Director可以有多個,而且Director也可以抽象出介面,這樣當我們要對Director進行擴充套件的時候將會非常的方便,提高了整個系統的健壯性,當然,如果系統不需要,我們儘量的簡單化處理。簡單才是最重要的。