- 옵저버 패턴은 객체의 상태 변화를 관찰하는 옵저버를 객체에 등록하여 상태 변화가 있을때마다 notify를 통해 객체가 관찰자들에게 알림을 보내는 패턴을 말합니다.
- 쉽게 말해서 어떤 이벤트가 일어나는 것을 감시하는 패턴입니다.
- 옵저버 패턴을 활용하면 다른 객체의 상태 변화를 별도의 함수 호출 없이 즉각적으로 알 수 있습니다. 따라서 이벤트에 대한 처리를 자주 해야하는 프로그램이라면 매우 효율적일 수 있습니다.
public class AppMain {
/*
* 예제의 설정
* 가장 보편적인 설정이라고 볼 수 있는 Youtuber와 Subscriber들의 관계로 예제를 설정하였습니다.
* Youtuber가 새로운 영상을 올리거나, 공지를 등록하는 것을 모두 notify 함수로 개념을 통일하여서 작성하였습니다.
*/
public static void main(String[] args) {
Youtuber youtuber = new Youtuber("Donghwan");
Observer subscriber1 = new Subscriber("철수");
Observer subscriber2 = new Subscriber("영희");
youtuber.registerObserver(subscriber1);
youtuber.registerObserver(subscriber2);
youtuber.notify("Youtube에 새로운 영상이 올라왔습니디.");
youtuber.unRegisterObserver(subscriber2);
youtuber.notify("Youtube에 새로운 공지가 올라왔습니다.");
}
}
GitHub - dev-donghwan/donghwan-study: donghwan-personal-study-repository
donghwan-personal-study-repository. Contribute to dev-donghwan/donghwan-study development by creating an account on GitHub.
github.com
728x90
반응형
'Computer Science > Design Pattern' 카테고리의 다른 글
전략패턴 (Strategy Pattern) (0) | 2023.01.29 |
---|---|
Singleton Pattern (0) | 2022.01.15 |
[Design Pattern] Proxy Pattern (0) | 2021.08.18 |
[Design Pattern] Template Method Pattern (0) | 2021.08.03 |
[Design Pattern] Strategy Pattern (0) | 2021.08.03 |
댓글