大话设计模式读书笔记三
2015-05-29 19:54
183 查看
12观察者模式
观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有的观察者对象,使他们能自动更新自己。当一个系统里面有多个需要写作的类存在时,可以使用观察者模式。
13抽象工厂模式
14状态模式
状态模式是当一个对象的内部状态发生改变的时候,改变类的行为,这个对象看起来是改变了其类相关的行为放在状态类里面进行执行。不同的状态有不同的行为。当一个对象的行为取决于他所处的状态,那么可以考虑使用状态模式
15适配器模式
适配器将一个类的接口转换成客户希望的另外一个接口。适配器使得原本不能兼容而不能一起工作的那些类可以一起工作适配器模式主要希望复用一些现存的类,但是接口和服用环境要求不一致的情况。也就是一个翻译。
16备忘录模式
备忘录:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样一个可以将该对象恢复到原来保存的状态这里就是把Originator里面的需要保存的变量打包成一个Memento然后放在Caretaker里面。Memento可以理解为是一个数据结构。
17组合模式
组合模式,将对象组合成树形结构以表示“部分-整体”的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性其实这个模式的一个功能就是让一个单体和一群东西都可以放在一个数组里。就是这个意思
相关文章推荐
- nyoj42 一笔画问题
- 时间比金钱金贵得多
- JAVA 构造代码块
- hdoj 2112 HDU Today
- Valid Parentheses问题
- Coursera公开课笔记: 斯坦福大学机器学习第七课“正则化(Regularization)”
- DOM4J解析XML文档、Document对象、节点对象节点对象属性、将文档写入XML文件
- 创建git私有仓库
- OpenCV - win7+vs2013(2012)+opencv3.0.0 环境配置
- win7启动提示:bootMGR被压缩
- vim map映射
- 【Jump Game】cpp
- unindent does not match any outer
- 从零开始打造一个新闻订阅APP之服务器篇(二、类时间片轮转算法+redis sorted set 实现“逛”功能)
- SQL循环语句
- CSS float与clear & 替换元素与非替换元素
- LeetCode_Partition List
- 增强站点 SSL 的安全性
- PAT(Advance) 1089. Insert or Merge (25)
- Leetcode(8):String to Integer (atoi)