Observable

OwlSuri·2022년 5월 7일
0

Reactive X (Reactive eXtension)

함수형 프로그래밍을 통한 비동기 데이터 흐름에 중점을 둔 패러다임인 반응형 프로그래밍을 쉽게 적용할 수 있도록 도와주는 라이브러리
반응형 프로그래밍: 비동기적인 데이터의 흐름을 관찰하고 처리하는 기법이다.
언어 별로 라이브러리를 지원해서 RxJava, RxKotlin, RxSwift 등의 이름이 존재한다.

이중 RxJava의 가장 핵심적인 요소인 Observable은 데이터 흐름에 맞게 알림을 보내 Observer가 데이터를 사용할 수 있도록 한다. 즉, Observable을 이용해 데이터를 회수하고 변환하는 메커니즘을 정의하고, Observer는 이를 구독해 데이터가 준비되면 이에 반응한다.

알림

  • onNext : 데이터의 발행을 알림
  • onComplete : 모든 데이터의 발행이 완료되었음을 알리고, 이후 모든 구독은 끝
  • onError : 데이터의 흐름 중에 에러가 발생했음을 알리고, Observable의 동작 끝

Observable의 종류

  • Observable : 가장 기본적인 형태, 0개~N개의 데이터 발행, BackPressure 없음
  • Single : 단 1개의 데이터, 혹은 오류 발행
  • Completable : 성공 혹은 실패했다는 결과만 발행
  • Maybe : 0개 또는 1개 완료, 오류
  • Flowable : 0개~N개의 데이터 발행, BackPressure 존재
profile
기억이 안되면, 기록을 -

0개의 댓글