Builder Pattern(建造者模式)

Builder Pattern(建造者模式)

意图

将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。

适用性

* 当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时。

* 当构造过程必须允许被构造的对象有不同的表示时。

结构


参与者:

Builder(抽象建造者角色) 

— 为创建一个Product对象的各个部件指定抽象接口。

ConcreteBuilder(具体建造者) 

— 实现Builder的接口以构造和装配该产品的各个部件。

— 定义并明确它所创建的表示。

— 提供一个检索产品的接口。 

Director(导演角色)

— 构造一个使用Builder接口的对象。 

Product(建造的产品)

— 表示被构造的复杂对象。 ConcreteBuilder创建该产品的内部表示并定义它的装配过程。 

— 包含定义组成部件的类,包括将这些部件装配成最终产品的接口。 

例子


建造者模式和工厂模式的区别

当创造一个对象需要很多步骤时适合使用建造者模式。

而当只需调用一个方法就可以简单地创建整个对象时适合使用工厂模式。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容