Hello,又是拖了几天更,实在是忙的要死,有时候忙累了,真的就是倒头睡的那种,刚好今天闲下来了。今天来更新一篇建造者模式。
其实建造者模式,我们已经在上一节已经有了解过了。只不过是上一节没有提到这样的一个概念。可能大家都觉得抽象工厂模式一般都是那样用的,其实里面已经包含了我们这一节的内容。
且听我细细道来。
建造者模式
又称作 Builder
模式,它将一个 复杂对象
拆分成多个 小组件
,将一个个小组件组装成复杂的对象。这就是 建造者模式
。
比如我们的 电脑
:它是一个复杂对象,我们可以将它拆封成:
在使用 建造者模式组装
的时候,就可以模拟实际我们在DIY 主机的时候,将一个个零件组装成一台可以开机的 计算机
。
建造模式常常与抽象工厂一起使用,建造者类一般通过工厂的抽象方法实例化指定的工厂,然后通过工厂 生产对象
代码我们还是参考上一节的内容,只不过,我改了一个类名,方便大家理解。
//抽象工厂建造者 public class AbstractFactoryBuilder { public PhoneProduct createPhone(String name) { AbstractFactory factory = null; if ("xiaomi" == name) { factory = new XiaoMiFactory(); } else { factory = new HuaweiFactory(); } PhoneFactory phoneFactory = factory.phoneFactory(); return phoneFactory.show(); } }
产品 产品
简单理解来说就是:
建造者
替我们完成,而我们只需要给 建造者
一些提示。 这里我们传入了一个 名字
。 PhoneProduct
小米工厂
,然后再从大工厂里面取出我们这里需要的 手机工厂
在通过手机工厂 创建出手机产品
main()
想不到吧,这个所谓的 建造者
已经在潜移默化中,已经被我们所使用过了。其实设计模式一点都不难,所谓设计模式,就是前人总结的经验套路、就是这样拿来用的,就这样理解。
http://c.biancheng.net/view/1354.html
https://gitee.com/mrc1999/Dev-Examples