结合复合和中介模式

时间:2018-01-23 23:08:23

标签: design-patterns composite mediator

我看到很少尝试实现这样的组合。但我的问题是,如果以某种方式推荐合并这两种模式。在我看来,Mediator通过控制Conposite组件的行为,可能会破坏Composite树本身的职责逻辑。有人可能会告诉我它是否错了,以及合并它们的理由是什么?

1 个答案:

答案 0 :(得分:0)

噢,我们必须有创意思考如何合并这两者。让我试一试;)

考虑到这一点(简要说明):

  • Mediator 控制一组对象的交互方式;
  • 复合处理对象和对象的组合(通常是递归方法);

两种模式的组合可能会产生菜单对象。

例如,菜单渲染器对象应调解构建 Android 或iPhone菜单(例如,在 Xamarin 中),或HTML菜单(基于 bootstrap JQuery

因此,当调解方法根据平台调用渲染菜单时,它也应该以递归方式组合每个项目及其各自的子项。

希望我能提供帮助;)