《设计模式Design Pattern》读书笔记之二十一
来源:互联网 发布:新闻资讯类数据分析 编辑:程序博客网 时间:2024/04/28 20:55
《设计模式Design Pattern》读书笔记之二十一
Visitor模式
结构
目的
当一个对象(node)结构相对固定的时候,通过创建一个一个visitor对象来对这个结构中的所有node进行访问;而不是在各个node中创建一个一个成员函数;这样,该node结构不需要改变,可以随意增加visitor对象来增加对node结构的不同访问动作。
讨论
1, 如果node经常修改(增加/减少等),visitor模式并不适合。因为node的修改,会牵涉到修改所有visitor的接口。
2, node需要提供一定的函数来供visitor访问,这样会稍微破坏封装性。
3, 可以有三种方式进行对node结构进行便利:node本身,visitor,一个iterator
参考资料
《Design Pattern》 Gang-Of-4 1997
- 《设计模式Design Pattern》读书笔记之二十一
- 《设计模式Design Pattern》读书笔记之十一
- 《设计模式Design Pattern》读书笔记之二
- 《设计模式Design Pattern》读书笔记之二十
- 《设计模式Design Pattern》读书笔记之三
- 《设计模式Design Pattern》读书笔记之四
- 《设计模式Design Pattern》读书笔记之六
- 《设计模式Design Pattern》读书笔记之七
- 《设计模式Design Pattern》读书笔记之八
- 《设计模式Design Pattern》读书笔记之九
- 《设计模式Design Pattern》读书笔记之十
- 《设计模式Design Pattern》读书笔记之十二
- 《设计模式Design Pattern》读书笔记之十三
- 《设计模式Design Pattern》读书笔记之十四
- 《设计模式Design Pattern》读书笔记之十五
- 《设计模式Design Pattern》读书笔记之十六
- 《设计模式Design Pattern》读书笔记之十七
- 《设计模式Design Pattern》读书笔记之十八
- 《设计模式Design Pattern》读书笔记之十九
- Martin Fowler:以OpenSource的方式做R&D
- 《设计模式Design Pattern》读书笔记之二十
- 网站营销推广10不要(zz)
- Asp.net(C#)实现验证码功能
- 《设计模式Design Pattern》读书笔记之二十一
- java.security.acl.Owner翻译
- 使用WSDL发布WebService(第二部分)简单对象访问协议——学习SOAP语法和使用SOAP发布WSDL
- VC操作SQL Server 主从表
- 现场总线与RS232、RS485的本质区别
- 查杀木马(原创)
- java.security.acl.Permission翻译
- 李开复给中国学生的第三封信:成功、自信、快乐
- 我宁愿相信