요새 RxJava가 너무 핫한지라 나중에 이것을 Android에 사용하게 될 지는 모르겠지만 배워두는 것도 나쁘지 않겠다 싶어서 관심을 가져본다. 일단 ReactiveX 홈페이지에 가니 지원 목록이 ㄷㄷ하다. 그냥 모든 언어를 지원한다고 보면 될 것 같다.

ReactiveX 지원 언어 및 프레임워크

ReativeX란

ReactiveX는 Observable 시퀀스를 사용하여 비동기 및 이벤트 기반 프로그램들을 작성하는 라이브러리라 한다. 그리고 동기와 비동기, 싱글과 멀티에 따라 나뉜다.

single itemsmultiple items
synchronousT getData()Iterable<T> getData()
asynchronousFuture<T> getData()Observable<T> getData()

Observables는 비동기 처리에 대한 광대한 코드를 줄여주며 어떤 유스케이스에서도 사용될 수 있는 단일 추상이라 한다.

eventIterable (pull)Observable (push)
retrieve dataT next()onNext(T)
discover errorthrows ExceptiononError(Exception)
complete!hasNext()onCompleted()