옵저버 패턴은 주체가 어떤 객체의 상태 변화를 관찰하다가 상태 변화가 있을 때마다 메서드 등을 통해 옵저버 목록에 있는 옵저버에게 변화를 알려주는 디자인 패턴입니다.
옵저버 패턴에는 주체 객체와 상태의 변경을 알아야 하는 관찰 객체(Observer Object)가 존재하며 이들의 관계는 1:1이 될 수도 있고 1:N이 될 수도 있습니다.
(장점)
실시간으로 한 객체의 변경사항을 다른 객체에 전파할 수 있습니다.
느슨한 결합으로 시스템이 유연하고 객체간의 의존성을 제거할 수 있다.
(단점)
너무 많이 사용하게 되면, 상태 관리가 힘들 수 있습니다
데이터 배분에 문제가 생기면 자칫 큰 문제로 이어질 수 있습니다.
참고
링크텍스트
https://velog.io/@hanna2100/%EB%94%94%EC%9E%90%EC%9D%B8%ED%8C%A8%ED%84%B4-2.-%EC%98%B5%EC%A0%80%EB%B2%84-%ED%8C%A8%ED%84%B4-%EA%B0%9C%EB%85%90%EA%B3%BC-%EC%98%88%EC%A0%9C-observer-pattern