我要寻找一个合适的设计模式如下:实现一个子系统通信设计模式
我有以下的体系结构:
MainApplication
SubSystem1
SubSystem2
SubSystem3
凡MainApplication初始化各子系统,
SubSystem1 s1;
SubSystem2 s2;
SubSystem3 s3;
public MainApplication()
{
s1 = new SubSystem1();
s2 = new SubSystem2();
s3 = new SubSystem3();
}
和每个子系统应该能够相互通信。
在每个子系统中,我如何从另一个子系统调用方法?例如在s1
中
public SubSystem1()
{
s2.Method1();
s3.Method2();
}
门面设计模式会在这里工作吗?如果是这样,它将如何实施?如果没有这种设计模式应该用于这种情况?
沟通的延伸是什么?它是基于事件的本质还是子系统1确实是x,因此子系统2也需要y? – 2012-02-16 21:08:30
目前,它是后者。尽管使用事件听起来像一个很好的解决方案。你可以扩展这个吗? – 2012-02-16 21:10:56
那么,如果这将是基于事件的基础,如哦音乐来自电线。您可以使用事件(内置.net)订阅事件,并根据需要为每个子系统处理。这将阻止子系统必须彼此了解。 – 2012-02-16 21:20:08