介绍
我遇到这种设计模式,而我现有的解决方案,以宣传对象的属性的依赖对象
其实,quot问题。Propagatorquot;基础上知名的quot; Observerquot;设计模式在这被称为主体对象持有的观察员名单,并自动通知任何状态变化。
不同的是,quot; Propagatorquot,使得它可以构造每个对象是"Subjectquot;和quot; Observerquot;互换。的传播者
模式背后的想法是建立一个网络依赖的对象发生变化时,推动通过传播者它的所有后代。
让我们给上面的图中的每一个演员的简要说明:IPropagator接口包含用于添加/删除依赖的对象和处理状态改变的方法。传播类,实现了IPropagator接口,并包含
quot; AddHandlerquot;管理的代表名单发生变化时,被调用的方法。类的StateChange代表变革本身。StateChangeOptions枚举允许指定一个变更传播选项。
最后的用法很简单 - 我们只需要调用quot; Processquot相应的传播方法与最近的变化同步的所有对象。
传播者,随着一个漂亮的代码示例设计模式的详细描述,可以发现在后由Martijn Boeker。
就是这样,
标记。{S1}