目录
建造者模式是什么
建造者模式属于创建型模式的一种,又叫做生成器模式,主要用来进行对象的构建,相比较程序员一步一步的自己去new 方便很多。
传统方法创建对象时没有设计缓存层对象,程序的扩展性和维护性不好,这时可以采用建造者模式,可以达到解耦的效果。
如果一个对象的构建比较复杂,超出了构造函数所能包含的范围,就可以使用工厂模式和Builder模式,相对于工厂模式会产出一个完整的产品,Builder应用于更加复杂的对象的构建,甚至只会构建产品的一个部分。
Mybatis中的设计模式_mybatis设计模式_骆驼整理说的博客-CSDN博客
优点是操作简单,扩展性强,维护性好。
简单示例
需求
建造两种不同的房子,房子的建造步骤有3步,比较繁琐。所以可以使用建造者模式把这些步骤封装起来。
相当于指挥者把不同的建造流程统一了,你只需要给它产品的参数,它就能进行统一的构建。
使用建造者模式构建对象
使用传统方法构建对象 步骤比较多
和工厂模式的区别
设计模式之工厂模式_trigger333的博客-CSDN博客
工厂模式主要是有很多的相似的类,把他们放到一个工厂里,在使用时传入一个类名就可以自动的创建,相当于工厂根据类名做了一个分发。
而创建者模式应用的场景更多是对象的创建步骤比较繁琐,所以将这个比较繁琐的步骤做一个封装,这样在使用时就比较简单了。
工厂模式侧重于处理 如何获取实例对象 问题,建造者模式侧重于处理 如何建造实例对象问题。