建造者模式(Builder Pattern)
定义:Separate the construction of a complex object from its representation so
that the same construction process can create different representations.(将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。)GOF 给建造模式的定义为:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。
这句话说得很抽象,不好理解,其实它的意思可以理解为:将构造复杂对象的过程和组成对象的部件解耦。
就像攒电脑一样,不管什么品牌的配件,只要兼容就可以装上; 同样,一样的配件,可以有好多组装的方式。这是对降低耦合、提高可复用性精神的一种贯彻。
建造模式的组成:
- ● Builder 抽象建造者角色:这个角色用来规范产品对象的各个组成成分的建造。一般而言,此角色独立于应用程序的业务逻辑。
- ● ConcreteBuilder 具体建造者角色:担任这个角色是于应用程序紧密相关的类,它们在指导者的调用下创建产品实例。这个角色在实现抽象建造者角色提供的方法前提下,达到完成产品组装,提供成品的功能。
- ● Director 指导者角色:调用具体建造者角色以创建产品对象。指导者并没有产品类的具体知识,真正拥有产品类的具体知识的是具体建造者对象。 <
理解Java设计模式:建造者模式详解
建造者模式(Builder Pattern)旨在将构造复杂对象的过程与表示分离,以实现不同构建过程创建不同表示。通过指导者角色调用具体建造者角色来创建产品对象,降低耦合性并提高复用性。适用于相同方法但执行顺序不同的场景,或组装部件产生不同效果的情况。建造者模式与工厂模式的区别在于关注点不同,前者注重方法调用顺序,后者侧重于创建零件。
订阅专栏 解锁全文
205

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



