我正在开发一个Silverlight应用程序,我过度使用了观察者模式.在我的实现中,我创建了两个接口IObservable<T>和IObserver<T>.前者包含将观察者附加到观察者的方法.后者有一个方法Notify(IObservable<T> observable, ...),observer.Notify(this, ...)当observable改变了状态时,observable 将自身作为参数传递.
现在我偶然发现了"事件",对我来说,似乎这就是观察者模式的一个实现,只是代表而不是前面提到的Notify方法.是对的吗?
我不太了解代表,并且不想花费数小时来重写我的代码只是为了最终得到与它已经做同样事情的代码.另一方面,事件可能优于基于接口的观察者模式.我错过了什么吗?