1.정의
-중재자 패턴은 프로그램의 상호작용을 해야 하는 개체들이 서로 복잡하게 관계를 맺고 있을 때 상호작용에 관한 행동을 별도의 형식으로 정의하여 중재하는 개체를 만드는 패턴.
-복잡한 상호작용은 결합도가 강해지고 유연성이 떨어져서 재사용하기 힘들 경우가 발생 할 수 있다.
-중재자 패턴를 통해 부분적으로만 결합도를 유지하여 유연성과 재사용성을 높인다.
2.다이어그램

-Camera 클래스는 사용자와 상호작용하는 객체로 입력값을 받아 기능을 작동시킨다.
-IChange 인터페이스는 중재자 객체의 인터페이스로 기능을 약속한다.
-InnerMediator클래스는 중재자 객체로 약속한 기능을 실질적으로 구현한다.
-InnerModule 클래스는 내부 기능을 약속하는 추상클래스이다.
-Iris클래스(조리개 기능)와 Shutter(셔터기능)클래스는 내부 기능을 실질적으로 구현한다.
3.구현
1)IChange 인터페이스

2)InnerMediator클래스

3)InnerModule 클래스

4)Iris클래스(조리개 기능)와 Shutter(셔터기능)클래스


5)Camera 클래스

6)테스트


'C# > GoF 디자인패턴' 카테고리의 다른 글
[GoF]21.감시자 패턴(Observer Pattern) (0) | 2023.12.12 |
---|---|
[GoF]20.메멘토 패턴(Memento Pattern) (0) | 2023.12.09 |
[GoF]18. 반복자 패턴(Iterator Pattern) (0) | 2023.12.02 |
[GoF]17.해석자 패턴(Interpreter Pattern) (0) | 2023.11.28 |
[GoF]16.명령 패턴(Command Pattern) (0) | 2023.11.23 |