VB.net 2010 视频教程 VB.net 2010 视频教程 VB.net 2010 视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 编程开发 > C#编程 >
  • C#教程之设计模式之一观察者模式

  • 2019-07-11 23:20 来源:未知

在平常得编程中,经常会用到观察者模式,属于使用场景很频繁得设计模式之一。

学习设计模式得目的,知道在何种场景中使用合适得设计模式。

以下我将从现实得场景出发去讲设计模式得运用,从比较中去看出优势

1.观察者模式得定义

目标状态发生变化得时候把他得信息通知给注册过得观察者们。

当一个对象改变需要同时通知其他对象,而且不知道具体要通知对象。

2.如何使用观察者模式

场景:在公司前台秘书需要在老板回来得时候给办公室得同事发出警告,让有些同事停止看股票,让有些同事停止看NBA。

subject:秘书,需要具有在老板回来时发出通知得方法,一个注册观察者得方法,一个装所有观察者得容器

obsever:抽象观察者,接受subject发出的通知并且处理

NBAObsever:看NBA同事,继承抽象观察者,具体观察者,停止看NBA得方法

StoketObsever:看股票得同事,继承抽象观察者,具体观察者,停止看股票得方法

具体代码(C#)

subject:

IObsever:

NBAObsever:

StocketObsever:

客户端调用代码:

运行结果:

如上,所有代码。

3.观察者模式得优势

观察者模式所做得工作其实在解耦合,让耦合得双方都依赖于抽象而不依赖于具体。

一方改变时不会影响另一方。

相关教程