码迷,mamicode.com
首页 > 其他好文 > 详细

设计模式之observer and visitor

时间:2016-04-25 19:24:41      阅读:384      评论:0      收藏:0      [点我收藏+]

标签:

很长时间一直对observer(观察者)与visitor(访问者)有些分不清晰。

今天有时间进行一下梳理:

1.observer模式

这基本就是一个通知模式,当被观察者发生改变时,通知所有监听此变化的观察者。

 

MVC、消息队列等等设计有此思想。

 

在被观察者中,都会存储一个及以上的的观察者名单(映射)

 

2.visitor模式

访问者模式,主要的解决问题是,通过多态的方式解决,不同的被访问者将会体现不同的形态。

当然这个时候不同于observer模式的观察者名单,而是用不同的接口(接口参数是观察者实现类),

这样就会出现,扩展复杂,甚至是破坏封装(相互之间将会调用对方的私密属性等等)但是和其他模式一起使用就会事半功倍。

设计模式之observer and visitor

标签:

原文地址:http://www.cnblogs.com/gaozhichao/p/5431905.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!