RxJava는 데이터를 만들고 통지하는 생산자와 통지된 데이터를 받아 처리하는 소비자로 구성됩니다. 이 생산자를 소비자가 구독해 생산자가 통지한 데이터를 소비자가 받게 됩니다. RxJava에서 이 생산자와 소비자의 관계는 크게 두 가지로 나뉩니다. 하나는 Reactive Streams를 지원하는 Flowable과 Subscriber, 다른 하나는 Reactive Streams를 지원하지 않고 배압 기능이 없는 Observable과 Observer입니다. 구분 생산자 소비자 Reactive Streams 지원 Flowable Subscriber Reactive Streams 미지원 Observable Observer Flowable은 Reactive Streams의 생산자인 Publisher를 구현한 클래..
RxJava 개념정리에 대한 포스트들을 정리할 때 참고한 책은 스다 토모유키님이 쓰신 RxJava 리액티브 프로그래밍이고 StudyFork(정석준님 안드로이드 스터디)에서 진행한 RxJava 스터디에서 공부한 내용 또한 같이 정리하였습니다. Reactive Programming이란? Rxjava를 공부하기에 앞서서 Reactive Programming이란 무엇인가에 대해 알아야 할 필요가 있습니다. Reactive Programming이란, 데이터가 통지될 때마다 관련 프로그램이 반응(Reaction)해 데이터를 처리하는 프로그래밍 방식입니다. 예를 들면, GPS 위치 정보가 변경될 때의 데이터 전송 흐름을 상상해보면 이해가 쉽습니다. 이동해 위치 정보가 변경될 때마다 데이터를 전송하고 이동을 멈추면 데..