首页 > 代码库 > 观察者模式-最终话
观察者模式-最终话
优点
在 .NET 中实现 Observer 有以下优点:
取消了依赖性。上述示例清楚地显示出 Album 和 BillingService 类之间的依赖性已经取消。
提高了可扩展性。“.NET 中的观察器”示例说明了添加新类型的观察器是多么简单。Album 类是“开-闭”原则的一个例子,最初是 Bertrand Meyer 在 Object-Oriented Software Construction 第二版 [Bertrand00] 中编写的,它描述了一个易于扩充但不必修改的类。Album 类体现了这种原则,因为您可以添加 PlayEvent 的观察器,而不必修改 Album 类。
提高了可测试性。“测试考虑事项”说明了您为什么可以不必对 BillingService 进行实例化就能测试 Album 类。测试验证了 Album 类能正确运行。测试还提供了如何编写BillingService 的出色示例。
缺点
如示例所示,Observer 的实现简单而直接。不过,随着委派和事件的数目不断增加,我们很难跟踪当事件触发时发生了什么情况。因此,代码变得很难调试,因为您必须在代码中搜索观察器。
参考文章:
http://msdn.microsoft.com/zh-cn/library/ms998543.aspx
http://msdn.microsoft.com/zh-cn/library/ff649896.aspx
http://msdn.microsoft.com/zh-cn/library/ms954621.aspx
观察者模式-最终话
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。