第十三周 C++设计模式 Boolan 李建忠

2017-04-09  本文已影响0人  一般的路人丙

“对象性能”模式

Singleton 单件模式

动机(Motivation)

模式定义

保证一个类仅有一个实例,并提供一个该实例的全局访问点。
——《设计模式》GoF

结构(Structure)

结构

要点总结

Flyweight 享元模式

动机(Motivation)

模式定义

运用共享技术有效地支持大量细粒度的对象。
——《设计模式》GoF

结构(Structure)

结构

要点总结

“状态变化”模式

Memento 备忘录

动机(Motivation)

模式定义

在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可以将该对象恢复到原先保存的状态。
——《设计模式》GoF

结构(Structure)

结构

要点总结

State 状态模式

动机(Motivation)

模式定义

允许一个对象在其内部状态改变时改变它的行为。从而使对象看起来似乎修改了其行为。
——《设计模式》GoF

结构(Structure)

结构

Context 和 State 稳定
ConcreteState 变化

要点总结

“数据结构”模式

Composite模式

动机(Motivation)

模式定义

将对象组合成树形结构以表示“部分-整体”的层次结构。Composite使得用户对单个对象和组合对象的使用具有一致性(稳定)。
——《设计模式》GoF

结构(Structure)

结构

要点总结

Iterator 迭代器

动机(Motivation)

模式定义

提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露(稳定)该对象的内部表示。
——《设计模式》GoF

结构(Structure)

结构

要点总结

在C++里面已经过时了,用泛型取代
Java里面仍然在用

Chain of Responsibility 职责链

动机(Motivation)

模式定义

使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递请求,直到有一个对象处理它为止。
——《设计模式》GoF

结构(Structure)

结构

Client和Handler稳定
ConcreteHandler变化

要点总结

“行为变化”模式

Command 命令模式

动机(Motivation)

模式定义

将一个请求(行为)封装为一个对象,从而使你可以用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。
——《设计模式》GoF

结构(Structure)

结构

Command 稳定
ConcreteCommand 变化

要点总结

Visitor 访问器

动机(Motivation)

模式定义

表示一个作用于某对象结构中的各元素的操作。使得可以在不改变(稳定)各元素的类的前提下定义(扩展)作用于这些元素的新操作(变化)。
——《设计模式》GoF

结构(Structure)

结构

Element ConcreteElement Visitor稳定
ConcreteVisitor变化

要点总结

“领域规则”模式

Interpreter 解析器

动机(Motivation)

Paste_Image.png

模式定义

给定一个语言,定义它的文法的一种表示,并定义一种解释器,这个解释器使用该表示来解释语言中的句子。
——《设计模式》GoF

结构(Structure)

结构

要点总结

上一篇下一篇

猜你喜欢

热点阅读