访问者模式——Head First Design Patterns
2014-01-22 21:43
363 查看
定义:当封装类似功能的原则不是很重要时,可以通过访问者模式遍历组合对象,增加新功能
使用场景:当封装类似功能的原则不是很重要,并且需要给某个组合对象增加新功能时
类图:
代码样例:
优点:1)在不改变组合对象结构的情况下,轻松地给组合对象增加新功能 2)新增的功能集中在访问者对象中
缺点:1)组合对象的功能并没有完全封装在自身当中 2)由于采用了遍历功能,改变组合对象的结果变得越来越麻烦
类似的设计模式:
配套的内功心法:1)
使用场景:当封装类似功能的原则不是很重要,并且需要给某个组合对象增加新功能时
类图:
代码样例:
优点:1)在不改变组合对象结构的情况下,轻松地给组合对象增加新功能 2)新增的功能集中在访问者对象中
缺点:1)组合对象的功能并没有完全封装在自身当中 2)由于采用了遍历功能,改变组合对象的结果变得越来越麻烦
类似的设计模式:
配套的内功心法:1)
相关文章推荐
- Head First Design Patterns 阅读笔记之五: Singleton Pattern
- 装饰者模式——Head First Design Patterns
- 用C#改写Head First Design Patterns--Command 命令(原创)
- 迭代器模式——Head First Design Patterns
- 享元模式——Head First Design Patterns
- 《Head.First-Design.Patterns》总结
- Head first design patterns 读书笔记 – Strategy(策略模式)
- 《Head First Design Patterns》读书笔记之策略模式
- 《Head First Design Patterns》读书笔记之命令模式
- Head First Design Patterns影印版和中文版
- Head_First_Design_Patterns --- 连接
- Head First Design Patterns 阅读笔记之三: Decorator Pattern
- Head First Design Patterns 阅读笔记之六: Command Pattern
- 用C#改写Head First Design Patterns--Decorator装饰(原创)
- OOP Design (Head First Design Patterns) 学习笔记--04 The decorator pattern
- 组合模式——Head First Design Patterns
- head first design patterns中的几个模式记录
- Head First Design Patterns - Command Pattern
- 用C#改写Head First Design Patterns--Iterator迭代器(原创)
- 《Head First Design Patterns》笔记十三:代理模式(Proxy Pattern)