Android

[Android] 발행 - 구독 패턴 (브로드캐스트, 이벤트버스)

김한토 2025. 2. 18. 11:22
반응형

https://gobae.tistory.com/122

 

발행-구독 패턴(Publisher-Subscriber Pattern)이란?

이전 글 옵저버 패턴(Observer Pattern)이란? 옵저버 패턴 옵저버 패턴은, 옵저버들의 목록을 객체(관찰하려는 대상)에 등록하여 객체가 상태 변화가 있을 때 마다 메서드 등을 통해 객체가 직접 목록

gobae.tistory.com

 

발행 - 구독 패턴 

 

https://developer.android.com/develop/background-work/background-tasks/broadcasts?hl=ko

 

브로드캐스트 개요  |  Background work  |  Android Developers

이 페이지는 Cloud Translation API를 통해 번역되었습니다. 브로드캐스트 개요 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. Android 앱은 게시-구독 디자인 패턴

developer.android.com

 

- 일반적으로 브로드캐스트는 앱 전체에 걸쳐 그리고 일반 사용자 플로우 외부에서 메시징 시스템으로 사용될 수 있습니다. 그러나 브로드캐스트에 응답하고 백그라운드에서 시스템 성능 저하의 원인이 될 수 있는 작업을 실행하는 기회를 남용하지 않도록 주의해야 합니다.

 

https://hantoluvcoding.tistory.com/81

 

[Android] EventBus

https://onlyfor-me-blog.tistory.com/550 [Android] EventBus란? EventBus 사용법EventBus는 그린로봇(greenrobot)이라는 곳에서 만든 오픈소스 라이브러리로, 아파치 2.0 라이선스를 적용하고 있으며 만들어진 지는 10년

hantoluvcoding.tistory.com

          이벤트 버스 (EventBus)                       VS     브로드캐스트 리시버 (Broadcast Receiver)
목적 컴포넌트 간 이벤트 통신 시스템 및 애플리케이션 간 이벤트 전달
사용 방식 Publish-Subscribe 패턴 시스템 또는 앱 간의 메시지 전달
구성 EventBus 라이브러리 사용 Intent와 BroadcastReceiver 사용
동작 방식 구독자가 이벤트를 처리 브로드캐스트 메시지를 수신하여 처리
장점 단순성, 유연성, 성능 시스템 레벨 이벤트 처리, 앱 간 통신
단점 디버깅 어려움, 전역 상태 관리 어려움 과도한 리소스 사용, 보안 관리 필요, 복잡한 처리

 

- 이벤트 버스는 앱 내에서 컴포넌트 간의 간단하고 유연한 통신이 필요할 때 적합

- 브로드캐스트 리시버는 시스템 이벤트나 여러 애플리케이션 간의 메시지 전달이 필요할 때 사용

 

반응형