Design Pattern | Mediator Pattern(メディエーターパターン)
Mediatorパターンとは?
- Mediatorという英単語は仲介者という意味である。
- メンバーが10人いるとき、互いに指示し合っていると作業は大きく混乱する。そのようなとき、立場の異なる仲介者がいれば、メンバーは仲介者にだけ報告し、メンバーへの指示も仲介者からだけ受けるようにできる。
- Mediatorパターンは、仲介者を通じて行動を起こさせる方式である。
- GoFのデザインパターンでは、振る舞いに関するデザインパターンに分類される。
Mediatorパターンのサンプルプログラム
ログインダイアログを表示し、テキストやボタンの有効/無効状態を制御するプログラムである。
Class Diagram

例では、Mediatorインターフェース、同僚となるコントロール、具体的なUIウィジェット、そしてそれらを調整する具象Mediatorを定義する。ウィジェット同士が直接制御し合うのではなく、状態が変わるとMediatorへ通知し、Mediatorが全体のUI状態を判断する。
メリット
Mediatorパターンは、オブジェクト間の複雑な多対多関係を減らす。各同僚はMediatorだけを知ればよいため、相互作用のルールを集中管理しやすく、変更しやすい。