반응형

중재자 패턴은, 여러 클라이언트들 간의 상호작용이 복잡할 때, 클라이언트들의 필요한 결합성만을 높인 패턴이다.


이는 실생활에서 콜센터와 비슷하다.


콜센터에 전화 연결을 요청하는 송신자와, 전화 연결을 받는 수신자로 나뉜다.


송신자와 수신자 모두 고객이다.


그리고 콜센터는 고객들간의 연결을 도와주는 중재자이다.


송신자는 수신자의 간단한 정보만 알고 있으면, 중재자를 통하여 연결을 받을 수 있다.


이처럼 중재자는 고객들 간의 복잡한 커뮤니케이션을 원활하게 도와주는 역할을 한다.


콜센터는 고객들간의 전화 연결의 결합성만을 높인 중재자이다.


여러 클라이언트들이 하나의 중재자로 결합을 이룬다.


아래의 예제는 채팅의 역할만을 결합한 중재자이다.




중재자는 클라이언트들을, 클라이언트는 중재자를 각 각 변수로서 가지고 있기 때문에, 전방 선언을 해주어야 오류가 나지 않는다.


전방 선언은 간단하게 말하면, 현재 소스 파일에는 없지만 다른 소스 파일에 존재하는 클래스를 정의하는 것을 말한다.


전방 선언은 C++ 프로그래머라면 자주 사용하기 때문에, 일부러라도 찾아보는 것을 추천한다.


중재자 패턴을 사용하면, 이처럼 클라이언트들은 다른 클라이언트의 정보를 알지 않아도 중재자를 통하여 상호작용을 할 수 있다.




반응형

+ Recent posts