美文网首页
Boolan 设计模式_2

Boolan 设计模式_2

作者: 竹林柳岸 | 来源:发表于2017-07-06 23:21 被阅读0次

主要内容:

本节主要讲对象创建和接口隔离各四种设计模式。

1. 对象创建模式

1.1 工厂模式

ISplitter *splitter = new BinarySplitter(); 这样写是编译时的依赖具体类,违反依赖倒置原则。
MainForm只依赖于抽象的ISplitter和SplitterFactory,并不依赖于具体类。
利用工厂方法创建具体的Splitter,延迟对象创建。

1.2 抽象工厂

解决一系列对象创建的工作。

1.3 原型模式

通过克隆自己创建对象,调用自己的拷贝构造函数 eg. new BinarySplitter(*this)。

1.4 构建器
  • eg. 构建房子
  • 在构造函数中调用虚函数是静态绑定,不是动态绑定。因为子类对象在构造时,先调用父类的构造函数,由于子类还没有构造出来,所以在调用父类构造中不能调用子类的虚函数。
  • 适用于:构建过程相同,但构建的各个部分不同的对象。
    分离house和housebuilder,housebuilder中有一个指向house的指针,获取house的成员。housedirector实现对house的构建过程,其中有一个指向housebuilder的指针,获取构造各个部件的方法。

2. 接口隔离模式

2.1 门面模式
  • 无论内部怎么变化,对外的接口还都是一致的。
  • “解耦”。
  • 一种架构设计思想。
2.2 代理模式
  • 两个对象之间增加一层间接层。
  • 在分布式系统中应用广泛。
2.3 适配器
  • 复用原有的类,但现有的接口和原有接口不一致情况使用。
  • 两种适配:
    (1)对象适配,运用组合,符合松耦合。
    (2)类适配,运用多继承,protected继承实现,不是继承接口。一般不推荐使用。
2.4 中介者
  • 多个对象相互关联的情况使用。
  • 用一个对象封装变化。

ps. 暂时写这么多,后面会边看书边补充。

相关文章

  • C++设计模式-第一篇 (Boolan)

    C++设计模式-第一篇 (Boolan) 本章内容:1 面向对象设计原则2 GOF-23种设计模式分类3 模板方法...

  • C++设计模式-第三篇 (Boolan)

    C++设计模式-第三篇 (Boolan) 本章内容:1 备忘录模式2 状态模式3 组合模式4 迭代器模式5 职责模...

  • C++设计模式-第二篇 (Boolan)

    C++设计模式-第二篇 (Boolan) 本章内容:1 工厂方法模式2 抽象工厂模式3 原型模式4 构建器模式5 ...

  • Boolan 设计模式_2

    主要内容: 本节主要讲对象创建和接口隔离各四种设计模式。 1. 对象创建模式 1.1 工厂模式 ISplitter...

  • 2018-03-22

    Boolan C++设计模式二 “对象创建”模式:通过“对象创建”模式绕开new,来避免对象创建(new)过程中所...

  • 2018-03-18

    Boolan C++设计模式一 设计模式:“每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的解决方案...

  • Boolan 设计模式-week2

    单一职责 装饰模式:动态地给一个对象增加一些额外的职责。 http://blog.csdn.net/wuzheka...

  • Boolan 设计模式_3

    ”对象性能“模式:解决对象创建代价问题 1. 单件模式 在整个系统中保证只存在一个实例。 构造函数和拷贝构造函数设...

  • Boolan 设计模式_1

    主要内容: 本讲主要讲解面向对象设计的八大原则,和其中五个设计模式。 1. 综述 目标:可复用(编译单位级别的复用...

  • 2018-03-28

    Boolan C++设计模式三 “对象性能”模式:面向对象很好的解决了“抽象”的问题,但是必不可免地要付出一定的代...

网友评论

      本文标题:Boolan 设计模式_2

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