[JavaScript] Observer pattern

·2022년 11월 16일
0

Javascript

목록 보기
9/16

📌 디자인 패턴 이란?

디자인 패턴이란 소프트웨어 개발을 하면서 발생하는 다양한 이슈들을 해결하는데 도움을 주는 기술들이다.
프레임워크, 라이브러리 같은 도구들과 달리 순수한 패턴 즉, 조언자의 역할만 한다.

JavaScript의 대표적인 디자인 패턴에는 싱글톤 패턴, 팩토리 패턴, observer 패턴 등이 있으며, observer pattern에 대해 알아보자!

📌 Observer pattern (옵저버 패턴) 이란?

클라이언트 측 JavaScript 프로그래밍에서 널리 사용되는 패턴으로, 객체 간의 결합도를 낮추기 위해 사용하는 디자인 패턴

결합도 ? 모듈간에 얼마나 상호의존성을 가지고 있느냐의 수준

객체의 변경을 추적하기 위해서 옵저버 패턴을 통해 객체 참조를 공유하는 모든 이들에게 변경 사실을 통지하고 이에 대처하는 대응이 필요하다.

📌 Observer pattern 작동방식

모듈들에게 옵저버를 등록하여 상태 변화가 있을 때마다 메서드를 통해 옵저버에게 통지하도록 하는 시스템

  • 모듈들은 상태 변화가 일어났을 때 옵저버에게 필요한 데이터와 함께 자신의 상태 변화를 통보한다.
  • 옵저버는 모듈로부터 전달받은 데이터를 가지고 연관된 다른 모듈들이 이를 참조해 필요한 작업을 수행할 수 있도록 도와준다. 즉, 옵저버는 모듈들의 상태 변화를 통제하는 중간관리자 역할을 한다.

  • subject가 옵저버를 등록한 즉, 관찰 대상이 되는 객체들이다.
  • subject에 이벤트가 발생하면 옵저버에게 콜백함수 즉, notifyObservers() 함수가 전달된다.

<참고 : https://lihano.tistory.com/19 >

profile
개발을 개발새발 열심히➰🐶

0개의 댓글