1. 개념 요약

ReactiveX는 비동기 이벤트 스트림을 함수형 스타일로 처리할 수 있도록 해주는 프로그래밍 패러다임이자 API 집합이다.

Observable이라는 데이터 스트림을 중심으로, 시간에 따라 발생하는 값을 LINQ처럼 조작하고 결합하며 처리할 수 있게 해준다.


2. 배경 지식

전통적인 비동기 이벤트 처리 방식에는 다음과 같은 문제가 있었다:

이러한 문제를 해결하고자 이벤트를 컬렉션처럼 다룬다는 개념에서 시작된 것이 ReactiveX다.

즉, 마치 배열이나 리스트처럼 시간에 따라 발생하는 값들을 map, filter, merge, combine 등의 연산자로 처리할 수 있게 해주는 것이다.


3. 상세 설명

3-1. 핵심 구성 요소

개념 설명
Observable 시간에 따라 값을 발행하는 데이터 스트림
Observer Observable을 구독(subscribe)하고 값에 반응하는 소비자
Operators Observable에 적용할 수 있는 연산자들 (map, filter, combineLatest 등)
Subscription Observer가 Observable을 구독할 때 생성되며, 구독 취소(dispose) 가능
Subject Observer와 Observable의 역할을 동시에 수행 (이벤트를 직접 발행 가능)

3-2. ReactiveX의 특징