Unreal5/Unreal C++

[U C++] Design Pattern - 발행 구독 디자인 패턴

taene_ 2024. 7. 8. 19:29

발행 구독 디자인 패턴

  • 푸시(Push)형태의 알림(Notification)을 구현하는데 적합한 디자인 패턴
  • 발행자(Publisher)와 구독자(Subscriber)로 구분된다.
    • 콘텐츠 제작자는 콘텐츠를 생산한다.
    • 발행자는 콘텐츠를 배포한다.
    • 구독자는 배포된 콘텐츠를 받아 소비한다.
    • 제작자와 구독자가 서로를 몰라도, 발행자를 통해 콘텐츠를 생산하고 전달할 수 있다. ( 느슨한 결합 )
  • 발행 구독 디자인 패턴의 장점
    • 제작자와 구독자는 서로를 모르기 때문에 느슨한 결합으로 구성된다.
    • 유지 보수(Maintenance)가 쉽고, 유연하게 활용될 수 있으며(Flexibility), 테스트가 쉬워진다.
    • 시스템 스케일을 유연하게 조절할 수 있으며(Scalability), 기능 확장(Extensibility)이 용이하다.