Mediator パターン

Mediator パターン は、ソフトウェアのデザインパターンの一つで、統一されたインタフェース の集合を提供するパターンである。
Mediator パターンは、GoFによって記述された 23 のパターンの一つであり、このパターンは、プログラムの動作する振る舞いを変更できるという点で、振る舞いに関するパターンと考えられている。

通常、プログラムは複数の（時には多数の）クラスからなり、ロジックと計算がクラスに配置される。しかし、プログラムでクラスの数が増えるに従い、特に保守やリファクタリングをする際、クラス間の通信の問題が複雑になり、プログラムを読んだり保守したりすることが困難になる。さらに、他のクラスに影響を与える可能性があるため、変更も難しくなる。

Mediator パターンを用いると、オブジェクト間の通信は mediator によってカプセル化され、オブジェクト同士で直接通信せず、mediator を介して行うようになる。これにより通信するオブジェクト同士の依存関係を削減し、結合の度合いを下げることができる。

登場するクラス 
Mediator (仲裁人、調停者)Colleague (同僚) オブジェクト間のコミュニケーションのインタフェースを定義する。
ConcreteMediatorMediator インターフェイスを実装し、Colleague オブジェクト間の通信を調整する。全ての Colleague の存在と、通信の目的について知っている。
ConcreteColleagueMediator を介して他の Colleagues と通信する。

関連項目 
 デザインパターン (ソフトウェア)

外部リンク 
 Mediator Pattern in Java
 Mediator Pattern in C#
 Jt JEE Pattern Oriented Framework

ソフトウェアパターン
Mediator