设计模式的第三大类型——行为模式,下面是对观察者模式、模板方法模式、命令模式、状态模式、职责链模式这五个的读后总结,欢迎交流!
观察者模式(Observer):定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。[大话设计模式]
特点:类似于面向对象的多态,只是面向对象多态讲的是同一对象在不同时间和不同条件下表现...
分类:
其他好文 时间:
2014-07-18 21:33:15
阅读次数:
203
一、什么是模板方法模式Template Method模式也叫模板方法模式,是行为模式之一,它把具有特定步骤算法中的某些必要的处理委让给抽象方法,通过子类继承对抽象方法的不同实现改变整个算法的行为。二、模板方法模式的应用场景Template Method模式一般应用在具有以下条件的应用中:- 具有统一...
分类:
其他好文 时间:
2014-07-16 21:39:40
阅读次数:
296
经过的前面的梳理,整个ranch框架的结构,大致有了一个清晰的脉络,即使我说的不是很清楚大家也基本能阅读懂源码。下面我继续分析剩下的的几个文件。7.ranch_transport.erl 这个文件是一个自定义的的erlang行为模式,主要规范实现这个行为模式的子类必须要实现那个函数,整个函数分为行为...
分类:
其他好文 时间:
2014-07-16 18:26:26
阅读次数:
307
A.WinForm中窗体显示 显示窗体可以有以下2种方法: Form.ShowDialog方法 (窗体显示为模式窗体) Form.Show方法 (窗体显示为无模式窗体)
A.WinForm中窗体显示 显示窗体可以有以下2种方法: Form.ShowDialog方法 (窗体显示为模式窗体) Form.Show方法 (窗体显示为无模式窗体) 2者具体区别如下: 1.在调用Form.Show方法后,Show方法后面的代码会立即执行 2.在调用Form.ShowDialog...
分类:
其他好文 时间:
2014-07-11 23:22:11
阅读次数:
241
sed:称为流编辑器,也称为行编辑器。sed处理过程:sed读取源文件中的一行,并将其放在临时缓冲区中,这个缓冲区称为模式空间,使用相应的模式对模式空间进行处理,并将处理的结果显示到屏幕上,并不会影响源文件,处理结束后,将模式空间中的内容显示至屏幕。sed格式:sed[opti..
分类:
其他好文 时间:
2014-07-09 08:20:16
阅读次数:
308
访问者模式(Visitor Pattern)是GoF提出的23种设计模式中的一种,属于行为模式。
据《大话设计模式》中说算是最复杂也是最难以理解的一种模式了。
定义(源于GoF《Design Pattern》):表示一个作用于某对象结构中的各元素的操作。它使你可以在
不改变各元素类的前提下定义作用于这些元素的新操作。从定义可以看出结构对象是使用访问者模式必备
条件,而且这个结构对象必...
分类:
其他好文 时间:
2014-07-08 14:01:22
阅读次数:
156
设置好内部状态,然后根据不同的函数作为行为模式,进行状态转换。
有点像Finite Automata算法,两者的思想是一样的。
会Finite Automata,那么这个设计模式就很容易了。
#pragma once
#include
#include
#include
#include
enum STATES
{
FULLY_RENTED, WAITING, GOT_A...
分类:
其他好文 时间:
2014-07-02 16:50:26
阅读次数:
225
本章将介绍vim编辑器的使用vim编辑器是vi编辑器的增强版vim是一种全屏的编辑器,是一种模式化的编辑器,之所以称为模式化的编辑器,因为vim有多种模式。接下来将介绍vim主要的三种模式:编辑模式(也叫命令模式):在该模式下你可以完成字符串跳转,字符串删除,翻屏操作等操作..
分类:
系统相关 时间:
2014-06-22 10:18:37
阅读次数:
228
在阎宏博士的《JAVA与模式》一书中开头是这样描述访问者(Visitor)模式的: 访问者模式是对象的行为模式。访问者模式的目的是封装一些施加于某种数据结构元素之上的操作。一旦这些操作需要修改的话,接受这个操作的数据结构则可以保持不变。 1 interface Service { 2 3 ...
分类:
编程语言 时间:
2014-06-21 08:55:39
阅读次数:
300