美文网首页设计模式C++实现笔记
Builder对象-创建型模式

Builder对象-创建型模式

作者: lixin_karl | 来源:发表于2018-11-03 15:32 被阅读0次

Builder对象创建型模式,主要目的就是将一个复杂对象的构建与它的表示分离。

//产品类 产品的抽象类

```

class Product{

public:

    void doSome(){}

};

```

//抽象类,规范产品的组件,有子类具体实现

```

class Builder{

public:

    virtual void builderA()= 0;

   virtual Product buildProduct()= 0;

};

```

//具体实现类

```

class ConcreteBuilder : public Builder{

public:

    Product buildProduct()override {

        return *product;

}

void builderA() override {

}

private:

    Product *product = new Product();

};

```

//指挥者 统一组装过程

```

class Director{

private:

    Builder *builder = new ConcreteBuilder();

public:

    Product getProduct(){

            builder->builderA();

            return builder->buildProduct();

}

};

```

用户调用的过程

```

int main(){

    ConcreteBuilder *getBuiler= new ConcreteBuilder();

    Director director(getBuiler);

    Product product = director.getProduct();

};

```

使用效果:

    1. 改变产品的内部表示

    2. 将构造代码与表示代码分离

    3. 构造过程可以有更加精细的控制

来源:《设计模式:可复用面向对象软件的基础》

相关文章

  • 设计模式之构建者模式

    Builder属于创建型设计模式 Builder定义: Separate the construction of ...

  • Builder模式

    剖析 创建型的设计模式。关注对象创建的过程 与工厂模式的区别。 工厂模式关注的是生产的结果,而Builder关注的...

  • Builder模式

    一、作用 工匠若水-设计模式(创建型)之建造者模式(Builder Pattern) 用于构建复杂的对象,将构建的...

  • 设计模式分类

    创建型设计模式 Abstract Factory模式 Builder模式 Factory Method模式[htt...

  • 设计模式学习-Builder模式

    Builder模式介绍 Builder模式是一步一步创建一个复杂对象的创建型模式。该模式是为了将构造复杂对象的过程...

  • 23天学习23种设计模式——建造者模式

    是什么——什么是建造者模式 建造者模式(Builder Pattern),是一种对象创建型设计模式。它将一个复杂对...

  • Android设计模式之(2)----Builder模式

    Builder模式 Builder模式使用链式结构创建复杂对象,将过程与结果分开,创建过程中可以自行组合。 使用场...

  • 结合Android浅谈Builder模式

    前言 Builder模式,对象创建型的设计模式。说起设计模式,可能会觉得有点高深莫测,其实不然,我们每天写代码都在...

  • Builder模式(创建型)

    生活中有着很多的 Builder 的例子,个人觉得大学生活就是一个 Builder 模式的最好体验: 要完成大学教...

  • JavaScript 23种设计模式

    创建型: 抽象工厂模式(Abstract Factory) 构建者模式(Builder) 工厂方法模式(Facto...

网友评论

    本文标题:Builder对象-创建型模式

    本文链接:https://www.haomeiwen.com/subject/svbkxqtx.html