C++笔记十三(C++设计模式)

2017-07-14  本文已影响0人  小小出大炮

本周内容
(1)单件模式
(2)享元模式
(3)状态模式
(4)备忘录
(5)组合模式
(6)迭代器
(7)职责链
(8)命令模式
(9)访问器
(10)解析器
(11)设计模式总结

“对象性能”模式

一 单件模式

动机

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

结构:


单件模式结构.png

要点总结

二 享元模式

动机

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

结构:


Flyweight.png

要点总结:

“状态变化”模式

三 状态模式

动机

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

结构:


State.png

要点

四 备忘录

动机

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

结构:


Memento.png

要点总结:

“数据结构”模式

五 组合模式

动机

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

结构:


Composite.png

要点总结:

六 迭代器

动机

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

结构:


Iterator.png

要点总结

七 职责链

动机

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

结构:


职责链.png

要点总结

“行为变化”模式

八 命令模式

动机

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

结构:


Command.png

要点总结

九 访问器

动机

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

结构:


Visitor.png

要点总结

“领域规则”模式

十 解析器

动机

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

结构:


Interpreter.png

要点总结

十一 设计模式总结

上一篇 下一篇

猜你喜欢

热点阅读