[Design Pattern] 옵저버 패턴

2025. 4. 15. 23:49·Design Pattern

1. 옵저버 패턴

옵저버 패턴은 어떤 객체의 상태가 변할 때

이를 감시하는 다른 객체들에게 알려주는 패턴을 말한다.

 

2. 옵저버 패턴 구조

💠 옵저버(Observer) 패턴 - 완벽 마스터하기

  • IObserver
    • 옵저버 인터페이스
    • Subject에서 이벤트 변경시 호출될 함수(Update)를 가지고 있다.
  • ObserverA, B
    • 옵저버 인터페이스를 구현한 클래스이다.
  • ISubject
    • 옵저버를 관리하는 인터페이스
    • 옵저버를 등록, 삭제, 알림 기능을 함수로 가지고 있다.
  • ConcreteSubject
    • ISubject를 구현한 클래스이다.
    • 옵저버들을 특정 자료구조로 포함하고 있다. (컴포지션 관계)

 

3. 옵저버 패턴 흐름

  1. 옵저버 관리 객체를 생성한다. (ISubject)
  2. 옵저버를 생성한다. (Observer)
  3. ISubject에 Observer 객체를 등록한다.
  4. ISubject에서 이벤트가 발생한다.
  5. ISubject에서 보유하고 있는 Observer 객체들에게 이벤트를 알린다. (Update 함수 호출)
  6. Observer 객체는 함수가 호출되고 특정 로직을 수행한다.

 

참고

💠 옵저버(Observer) 패턴 - 완벽 마스터하기

'Design Pattern' 카테고리의 다른 글

[Design Pattern] 상태 패턴 (State Pattern)  (0) 2025.04.17
[Design Pattern] 커맨드 패턴 (Command Pattern)  (0) 2025.04.14
[Design Pattern] 퍼사드 패턴 (Facade)  (0) 2025.04.11
[Design Pattern] 프록시 패턴 (Proxy Pattern)  (0) 2025.04.10
[Design Pattern] 어댑터 패턴 (Adapter Pattern)  (0) 2025.04.09
'Design Pattern' 카테고리의 다른 글
  • [Design Pattern] 상태 패턴 (State Pattern)
  • [Design Pattern] 커맨드 패턴 (Command Pattern)
  • [Design Pattern] 퍼사드 패턴 (Facade)
  • [Design Pattern] 프록시 패턴 (Proxy Pattern)
DevColIn
DevColIn
복잡함을 단순하게
  • DevColIn
    심플한 코딩생활
    복잡함을 단순하게
  • 전체
    오늘
    어제
    • 전체보기 (223)
      • Unreal 부트캠프 (49)
        • TIL (34)
        • 사전캠프 (7)
        • 본캠프 (8)
      • Unrael (10)
        • 환경설정 (0)
        • Basic (19)
        • Component (5)
        • GAS (GameplayAbilitySystem) (3)
        • AI (2)
        • Implement (10)
        • UI (1)
        • Error (1)
        • Network (2)
        • Tip (1)
      • Level Design (5)
      • Math (1)
      • Design Pattern (16)
      • Computer Science (2)
        • Network (1)
        • Database (1)
      • Algorithm (79)
        • Basic (4)
        • Practice (74)
      • C++ (4)
        • Basic (4)
      • Tool (0)
      • Game (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 미디어로그
    • 위치로그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    unreal
    알고리즘
    디자인 패턴
    AI
    Animation
    사전캠프
    디자인패턴
    component
    Design Pattern
    tsoftobjectptr
    c++
    본캠프
    게임동기화
    레벨디자인
    내일배움캠프
    assetmanager
    KPT회고
    Algorithm
    Implement
    basic
    gas
    액터
    하드 레퍼런싱
    Til
    GameplayEffect
    소프트 레퍼런신
    퀘스트
    DesignPattern
    actor
    unrealengine
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.2
DevColIn
[Design Pattern] 옵저버 패턴
상단으로

티스토리툴바