我是靠谱客的博主 成就小懒虫,这篇文章主要介绍GOF23设计模式之观察者模式之理解,现在分享给大家,希望可以做个参考。



观察者模式Observer

     广播机制的场景:

     场景:

         聊天室程序的创建。服务器创建好后,ABC三个客户端连上来公开聊天。A向服务器发送数据,服务器端聊天数据改变。我们希望将这些聊天数据分别发给其他在线的客户。也就是说,每个客户端需要更新服务器端得数据。

         网站上,很多人订阅了“Java主题的新闻。当有这个主题新闻时,就会将这些新闻发给所有订阅的人。

         大家一起玩CS游戏时,服务器需要将每个人的方位变化发给所有的客户

 

     上面这些场景,我们都可以使用观察者模式来处理。我们可以把多个订阅者,,客户称之为观察者:需要同步给多个订阅者的数据封装在对象中,称之为目标。

 

核心:

     观察者模式主要用于1N的通知。当一个对象(目标对象Subject或者ObjServable)的状态变化时,他需要及时告知一系列对象(观察者对象,Observer),令他们做出响应

     通知观察者的方式:

         推:

              每次都会把通知以广播方式发送给所有观察者,所有观察者只能被动接受

         拉:

              观察者只要知道有情况变化即可至于什么时候获取内容获取什么内容,都可以自主决定。

 

最后

以上就是成就小懒虫最近收集整理的关于GOF23设计模式之观察者模式之理解的全部内容,更多相关GOF23设计模式之观察者模式之理解内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(126)

评论列表共有 0 条评论

立即
投稿
返回
顶部