建造者模式创建的对象稍复杂, 有多个组成部分。
建造者模式与抽象工厂模式相比,在工厂方法中增加了一个对象变量和一个方法(这个方法用于生产该对象),新增了一个导演类,这个类里面实现对象的各个组成部分的拼装逻辑,供客户端调用。
------------------------概述--------------------------------------------------------------------
从下面的示例3中可以看出,建造者模式与抽象工厂模式的区别,就在于:
工厂中:
1、新增了一个套餐对象。
2、工厂中的其他生产方法均生成套餐对象的组成部分。
3、新增了生产套餐的方法。
新增了导演类,导演类中按顺序生产套餐的组成部分后,生成套餐对象。
导演类只有一个。
示例3:
产品接口1:铅笔产品接口2:橡皮产品实现类1:晨光铅笔产品实现类2:晨光橡皮产品实现类3:真彩铅笔产品实现类4:真彩橡皮
工厂接口1:品牌工厂(生产铅笔、生产橡皮、生产套餐)工厂实现类1:晨光工厂:(对象)晨光套餐,方法(生产晨光套餐.晨光铅笔、生产晨光套餐.晨光橡皮、生产晨光套餐)工厂实现类2:真彩工厂:(对象)真彩套餐,方法(生产真彩套餐.真彩铅笔、生产真彩套餐.真彩橡皮、生产真彩套餐)
导演类:生产套餐(步骤:1、生产铅笔;2、生产橡皮;3、生产套餐)
客户端:导演(晨光).生产套餐()
-------------------------------------------------------------------------------------------------
不知道合不合理的应用:http://www.importnew.com/11506.html

本文详细介绍了建造者模式的概念及其与抽象工厂模式的区别。通过具体示例展示了如何使用建造者模式来构建复杂对象,并强调了导演类的作用。

被折叠的 条评论
为什么被折叠?



