设计模式与泡mm的关系之visitor访问者模式及再思考
2006-11-21 02:31
721 查看
我跑我跑我跑
网上原文如下:
23、Visitor,情人节到了,要给每个mm送一束鲜花和一张卡片,可是每个mm送的花都要针对她个人的特点,每张卡片也要根据个人的特点来挑,我一个人哪搞得清楚,还是找花店老板和礼品店老板做一下Visitor,让花店老板根据mm的特点选一束花,让礼品店老板也根据每个人特点选一张卡,这样就轻松多了。
访问者模式:访问者模式的目的是封装一些施加于某种数据结构元素之上的操作。一旦这些操作需要修改的话,接受这个操作的数据结构可以保持不变。访问者模式适用于数据结构相对未定的系统,它把数据结构和作用于结构上的操作之间的耦合解脱开,使得操作集合可以相对自由的演化。访问者模式使得增加新的操作变的很容易,就是增加一个新的访问者类。访问者模式将有关的行为集中到一个访问者对象中,而不是分散到一个个的节点类中。当使用访问者模式时,要将尽可能多的对象浏览逻辑放在访问者类中,而不是放到它的子类中。访问者模式可以跨过几个类的等级结构访问属于不同的等级结构的成员类。
点评:
哇靠,这个例子居然比教程上讲得更形象,更清楚。赞的。这么多mm,既要送鲜花,还要送卡片,不要人帮忙还真是够累的。这个时候就得借助鲜花店老板和礼品店老板了。
最后一个模式了,全都结束了,娃哈哈。Over。
网上原文如下:
23、Visitor,情人节到了,要给每个mm送一束鲜花和一张卡片,可是每个mm送的花都要针对她个人的特点,每张卡片也要根据个人的特点来挑,我一个人哪搞得清楚,还是找花店老板和礼品店老板做一下Visitor,让花店老板根据mm的特点选一束花,让礼品店老板也根据每个人特点选一张卡,这样就轻松多了。
访问者模式:访问者模式的目的是封装一些施加于某种数据结构元素之上的操作。一旦这些操作需要修改的话,接受这个操作的数据结构可以保持不变。访问者模式适用于数据结构相对未定的系统,它把数据结构和作用于结构上的操作之间的耦合解脱开,使得操作集合可以相对自由的演化。访问者模式使得增加新的操作变的很容易,就是增加一个新的访问者类。访问者模式将有关的行为集中到一个访问者对象中,而不是分散到一个个的节点类中。当使用访问者模式时,要将尽可能多的对象浏览逻辑放在访问者类中,而不是放到它的子类中。访问者模式可以跨过几个类的等级结构访问属于不同的等级结构的成员类。
点评:
哇靠,这个例子居然比教程上讲得更形象,更清楚。赞的。这么多mm,既要送鲜花,还要送卡片,不要人帮忙还真是够累的。这个时候就得借助鲜花店老板和礼品店老板了。
最后一个模式了,全都结束了,娃哈哈。Over。
相关文章推荐
- 设计模式与泡mm的关系之工厂模式及工厂模式的再思考
- 设计模式与泡mm的关系之Composite组合模式及组合模式的再思考
- 设计模式与泡mm的关系之Proxy代理模式及代理模式的再思考
- 设计模式与泡mm的关系之singleton及singleton的再思考
- 设计模式与泡mm的关系之Adapter适配器模式及适配器模式的再思考
- 设计模式与泡mm的关系之Command命令模式及再思考
- 设计模式与泡mm的关系之Observer观察者模式及再思考
- 设计模式与泡mm的关系之Prototype原型模式及原型模式的再思考
- 设计模式与泡mm的关系之interpret解释器模式及解释器模式的再思考
- 设计模式与泡mm的关系之iterator迭代模式及再思考
- 设计模式与泡mm的关系之Builder生成器模式及Builder模式的再思考
- 设计模式与泡mm的关系之Decorator装饰者设计模式及装饰者设计模式的再思考
- 设计模式与泡mm的关系之state状态模式及再思考
- 设计模式与泡mm的关系之Facade外观模式及外观模式的再思考
- 设计模式与泡mm的关系之flyweight享元模式及享元模式的再思考
- 设计模式与泡mm的关系之template method模版方法模式及再思考
- 设计模式与泡mm的关系之Mediator中介者模式及再思考
- 设计模式与泡mm的关系之strategy策略模式及再思考
- 设计模式与泡mm的关系之Bridge桥接模式及桥接模式的再思考
- 设计模式与泡mm的关系之Chain of Responsibility职责链模式及再思考