옵저버 패턴이란?
옵저버 패턴은 객체간 의존성을 줄이면서 상호작용을 유지할 수 있는 디자인 패턴입니다.
어떤 객체의 상태가 변경되었을 때 해당 변화를 구독하는 구독자들에게 이벤트를 발생시킵니다.
여기서 이벤트를 발생시키는 자가 Publisher, 수신자는 Subscriber라고 합니다.
어떻게 객체간 의존성을 느슨하게 할 수 있는지?
옵저버 패턴의 Publisher와 Subscriber는 구체타입이 아닌 인터페이스를 통해서 구독관계를 형성할 수 있기 때문입니다.
따라서 Publisher 및 Subscriber의 구체적인 구현사항에 변경이 생겨도 변경 부분 외 코드 수정량이 적습니다.