Design Patterns: Mediator
- Limits subclassing and specialization. This allows Colleague classes to be reused without any changes.
- Decouples colleagues. This facilitates independent variations of the Colleague and Mediator classes.
- Simplifies Protocols. By replacing many-to-many interactions with one-to-many interactions, object relationships become easier to understand.