본문 바로가기
[RxJava] #6 안드로이드의 RxJava 활용 [RxJava] #6 안드로이드의 RxJava 활용 - 자바8에는 Stream API 와 같은 Push-based 데이터 처리 기능이 있다. 그러나 안드로이드에서는 이러한 자바 8의 기능을 완벽하게 사용할 수 없다. - 안드로이드에서 RxJava 를 활용할 수 있는 RxAndroid 라는 라이브러리를 사용할 수 있다. 6.1. RxAndroid 소개 - RxAndroid 는 RxJava 에 최소한의 클래스를 추가하여 안드로이드 앱에서 리액티브 구성 요소를 쉽고 간편하게 사용하게 만드는 라이브러리이다. - RxAndroid 의 장점은… 간단한 코드로 복잡한 concurrency 프로그래밍을 할 수 있다. 비동기 구조에서 에러를 다루기 쉽다. 함수형 프로그래밍 기법도 부분적으로 적용할 수 있다. 6.1.1... 2019. 6. 10.
[RxJava] #3 리액티브 연산자 입문 - ReactiveX 문서의 연산자 부분을 살펴보면 다양한 연산자(operator)함수가 존재한다. 이 연산자들은 버전이 높아지면서 계속 늘고 있다. 이 연산자들을 모두 알아야 리액티브 프로그래밍을 할 수 있는 것은 아니다. - for, if while 문처럼 프로그래밍 언어에서 제공하는 키워드들을 사용하는 대신 RxJava 의 연산자로 비동기 프로그래밍에 필요한 주요 로직을 만들 수 있다. - 리액티브 연산자의 특징은 언어 특성과 크게 연관이 없다. 리액티브 연산자는 함수라고 한다. 형식만 놓고 보면 Observable 등의 클래스에 포함되어 있으므로 자바 관점에서는 메서드이다. 하지만 함수형 프로그래밍의 원리에 따르면 리엑티브 연산자는 부수 효과가 없는 순수 함수(pure function)이다. - .. 2019. 6. 4.
[RxJava] #2 Observable 처음 만들기 - Observable 은 데이터 흐름에 맞게 알림을 보내 구독자가 데이터를 처리할 수 있도록 한다. RxJava 프로그래밍은 Observable 에서 시작해 그것으로 끝난대고 해도 과언이 아닐 정도로 중요한 개념이다. - Rajava 1.x 에서는 데이터 소스를 Observable 과 Single 클래스로 구성했다. RxJava 2 에서는 Observable 클래스를 상황에 맞게 세분화해 각각 Observable, Maybe, Flowable 로 나뉘었고, Single 도 그대로 존재한다. - Maybe 클래스는 Reduce() 함수나 firstElement() 함수와 같이 데이터가 발행될 수 있거나 혹은 발행되지 않고도 완료되는 경우를 의미한다. - Flowable 클래스는 Observable 에서 .. 2019. 6. 3.
반응형