Python版 https://github.com/faif/python-patterns/blob/master/behavioral/specification.py #!/usr/bin/env python # -*- coding: utf-8 -*- """ @author: Gor ...
分类:
其他好文 时间:
2018-05-14 13:47:05
阅读次数:
163
Python转载版 https://github.com/faif/python-patterns/blob/master/behavioral/observer.py #!/usr/bin/env python # -*- coding: utf-8 -*- """ http://code.act ...
分类:
其他好文 时间:
2018-05-14 13:46:27
阅读次数:
186
Python版 https://github.com/faif/python-patterns/blob/master/behavioral/publish_subscribe.py #!/usr/bin/env python # -*- coding: utf-8 -*- """ Referenc ...
分类:
其他好文 时间:
2018-05-14 13:45:46
阅读次数:
209
一、什么是访问者模式 Visitor模式也叫访问者模式,是行为模式之一 ,它分离对象的数据和行为,使用Visitor模式, 可以不修改已有类的情况下,增加新的操作。 二、访问者模式的应用示例 比如有一个公园,有一到多个不同的组成部分;该公 园存在多个访问者:清洁工A负责打扫公园的A部分,清 洁工B负 ...
分类:
其他好文 时间:
2018-05-14 12:31:28
阅读次数:
168
一、什么是备忘录模式 Memento模式也叫备忘录模式,是行为模式之 一,它的作用是保存对象的内部状态,并在需要 的时候(undo/rollback)恢复对象以前的状态。 二、备忘录模式的应用场景 如果一个对象需要保存状态并可通过undo或rollback等 操作恢复到以前的状态时,可以使用Meme ...
分类:
其他好文 时间:
2018-05-14 11:05:22
阅读次数:
144
一、什么是迭代模式 Iterator模式也叫迭代模式,是行为模式之 一,它把对容器中包含的内部对象的访问委让给 外部类,使用Iterator(遍历)按顺序进行遍历 访问的设计模式。 二、不使用迭代模式的应用 在应用Iterator模式之前,首先应该明白Iterator 模式用来解决什么问题。或者说, ...
分类:
其他好文 时间:
2018-05-14 10:28:12
阅读次数:
178
一、什么是观察者模式 Observer模式是行为模式之一,它的作用是当 一个对象的状态发生变化时,能够自动通知其他 关联对象,自动刷新对象状态。 Observer模式提供给关联对象一种同步通信的 手段,使某个对象与依赖它的其他对象之间保持 状态同步。 二、观察者模式的结构 三、观察者模式的角色和职责 ...
分类:
其他好文 时间:
2018-05-13 19:54:28
阅读次数:
100
Java 设计模式系列(二三)访问者模式(Vistor) 访问者模式是对象的行为模式。访问者模式的目的是封装一些施加于某种数据结构元素之上的操作。一旦这些操作需要修改的话,接受这个操作的数据结构则可以保持不变。 一、访问者模式结构 访问者模式适用于数据结构相对未定的系统,它把数据结构和作用于结构上的 ...
分类:
编程语言 时间:
2018-05-10 21:42:30
阅读次数:
206
Java 设计模式系列(十六)观察者模式(Observer) 观察者模式是对象的行为模式,又叫发布 订阅(Publish/Subscribe)模式、模型 视图(Model/View)模式、源 监听器(Source/Listener)模式或从属者(Dependents)模式。 观察者模式定义了一种一对 ...
分类:
编程语言 时间:
2018-05-10 20:00:11
阅读次数:
181
Java 设计模式系列(十三)模板方法 模板方法模式是类的行为模式。准备一个抽象类,将部分逻辑以具体方法以及具体构造函数的形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑。不同的子类可以以不同的方式实现这些抽象方法,从而对剩余的逻辑有不同的实现。这就是模板方法模式的用意。 一、模板方法的结构 ...
分类:
编程语言 时间:
2018-05-09 22:45:14
阅读次数:
256