옵서버 패턴은 자신을 관찰하고 있는 객체에 자신의 상태를 알리는 디자인 패턴이다. 코드의 로직이 다른 값의 변화에 의존하는 경우, 코드는 값을 확인하는 과정이 필요하다. 그러나 변화를 확인하기 위해 계속해서 상태를 확인하는 것은 비효율적이다. 직접 상태를 관찰하는 대신 수동적으로 상태 값을 전달받아 처리하는 패턴을 옵서버 패턴이라 한다. 구현 옵서버 패턴은 Subject Observer 로 구성된다. Subject는 통보를, Observer는 처리를 담당한다. Subject Subject는 객체의 등록, 삭제, 통보를 담당한다. 상태 값을 전달받고 싶어 하는 모든 객체는 Subject에 등록되어 있어야 한다. // 주제(Subject) 인터페이스 class Subject { public: virtual ..