중재자 패턴
- 행동 관련 디자인 패턴.
- 여러 객체들이 소통하는 방법을 캡슐화하는 패턴.
- 여러 컴포넌트 간의 결합도를 중재자를 통해 낮출 수 있다.
여러 컴포넌트들이 있고 각각의 컴포넌트들이 서로 직접 의사소통을 하고 있다고 가정한다면,
각각의 컴포넌트들이 강하게 결합하게 된다.
이럴경우 코드 구현, 변경, 테스트, 재사용하기 모두 어렵다.
모든 Colleague들은 Mediator 인터페이스를 참조하고 있다.
Colleague가 Colleague를 직접 참조하는 것이 없다는 점이 중요하다.
Colleague가 Mediator를 참조하고 있고 Mediator를 실체화한 ConcreteMediator가 각각의 Colleague들을 참조하고 있다.
서로의 협동이 필요한 경우 Mediator를 통해서 일이 처리되도록 구조화시키는 패턴이다.
중재자 패턴의 장점
1. 컴포넌트 코드를 변경하지 않고 새로운 중재자를 만들어 사용할 수 있다.
2. 각각의 컴포넌트 코드를 보다 간결하게 유지할 수 있다.
https://refactoring.guru/ko/design-patterns/mediator
'프로그래밍 강의 메모 > 코딩으로 학습하는 GoF의 디자인 패턴_백기선' 카테고리의 다른 글
행동 관련 디자인 패턴 > 옵저버 패턴(Observer Pattern) (0) | 2022.05.26 |
---|---|
행동 관련 디자인 패턴 > 메멘토 패턴(Memento Pattern) (0) | 2022.05.26 |
행동 관련 디자인 패턴 > 이터레이터 패턴(Iterator Pattern) (0) | 2022.05.26 |
행동 관련 디자인 패턴 > 인터프리터 패턴(Interpreter Pattern) (0) | 2022.05.26 |
행동 관련 디자인 패턴 > 커맨드 패턴(Command Pattern) (0) | 2022.05.26 |