중재자 패턴은 단단히 결합되어 유지 관리하기 어려운 개체 집합을 처리해야 하는 경우 좋은 선택입니다. 이렇게 하면 개체 간의 종속성을 줄이고 전체적인 복잡성을 줄일 수 있습니다. 중재자 패턴을 사용하면 개체 간의 통신이 중재자 개체 내에 캡슐화됩니다. 개체는 더 이상 서로 직접 통신하지 않고 중재자를 통해 통신합니다. 이렇게 하면 통신 개체 간의 종속성이 줄어들어 결합이 줄어듭니다. 중재자 디자인 패턴은 중요하고 널리 사용되는 행동 디자인 패턴 중 하나입니다. 중재자를 사용하면 레이어를 통해 개체 간의 상호 작용이 발생하도록 사이에 레이어를 도입하여 개체를 분리할 수 있습니다. 개체가 서로 직접 상호 작용하는 경우 시스템 구성 요소가 서로 밀접하게 결합되어 유지 관리 비용이 높아지고 확장하기가 어렵지 않습니다. 중재자 패턴은 통신을 위해 개체 간에 중재자를 제공하고 개체 간의 손실 커플링을 구현하는 데 중점을 둡니다. 이 패턴은 적절한 디자인없이 복잡성을 줄이는 것을 목표로하지만, 중재자 개체 자체는 매우 복잡 해질 수 있습니다. 관찰자 패턴은 중재자가 모든 오케스트레이션을 처리하는 대신 중재자의 이벤트를 처리하는 동료 개체와 함께 여기에 도움이 될 수 있습니다. 중재자와 관찰자의 차이는 종종 애매합니다. 대부분의 경우 이러한 패턴 중 하나를 구현할 수 있습니다.

하지만 때로는 동시에 둘 다 적용 할 수 있습니다. 우리가 어떻게 그렇게 할 수 있는지 봅시다. 이 문서에서는 GoF 동작 패턴 중 하나인 중재자 패턴을 살펴보겠습니다. 우리는 그 목적을 설명하고 우리가 그것을 사용해야 할 때 설명 할 것이다. 그러나 실제 생활에서는 복잡한 종속 개체 집합을 처리해야 하는 경우가 많습니다. 이것은 중재자 패턴이 유용 할 수있는 경우입니다. 위의 UML 클래스 다이어그램에서 동료1 및 동료2 클래스는 서로를 직접 참조(및 업데이트)하지 않습니다. 대신 상호 작용(mediate()을 제어하고 조정하기 위한 공통 중재자 인터페이스를 참조하여 상호 작용이 수행되는 방식과 는 별개로 만듭니다.