设计模式创造性:建造者模式

电子说

1.3w人已加入

描述

建造者模式(Builder Pattern)使用多个简单的对象一步一步构建成一个复杂的对象。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。

一个 Builder 类会一步一步构造最终的对象。该 Builder 类是独立于其他对象的。

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

结构图

Builder

角色与理解

  • 建造者模式主要包含如下几个角色:
  • Builder (抽象建造者):构建产品对象部件方法的抽象接口,可以是接口也可以是抽象类,供指挥者使用;方法包含两类bulidX()与getResult()方法
  • ConcreteBuilder (具体建造者):实现抽象建造者接口,一个具体建造者对应一中具体的产品对象
  • Product (产品角色):建造者模式最终产物
  • Director (指挥者):又称为导演类,它负责安排产品对象的各个部件的建造顺序
  • 抽象建造者提供抽象建造部件方法,具体建造者实现这些抽象方法,指挥者调用这些抽象方法,完成构建同样构建过程但是不同实现的对象的建造
  • 建造者模式与抽象工厂模式的区别是前者是建造一个完整的复杂产品,而后者是一系列产品,前者像汽车组装厂,后者像汽车配件生产厂

核心代码

  • 产品

Builder

  • 抽象建造者

Builder

  • 具体建造者

Builder

  • 指挥者

Builder

  • 客户端

Builder

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分