장바구니 담기 close

장바구니에 상품을 담았습니다.

RxJava 리액티브 프로그래밍

RxJava 리액티브 프로그래밍

  • 스다토모유키
  • |
  • 길벗
  • |
  • 2019-04-08 출간
  • |
  • 384페이지
  • |
  • 183 X 235 mm
  • |
  • ISBN 9791160507461
판매가

30,000원

즉시할인가

27,000

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
27,000

이 상품은 품절된 상품입니다

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평




데이터에 실시간으로 반응하고 비동기 처리가 가능한 리액티브 프로그래밍을 배우자

리액티브 프로그래밍의 기본 개념을 잡자!
리액티브 프로그래밍 라이브러리의 표준 사양인 Reactive Streams를 소개하고 RxJava를 시작하는 데 필요한 람다식과 비동기 처리에 관한 배경 지식은 물론 RxJava의 메커니즘과 핵심 연산자의 작동 원리, RxJava로 구현한 코드를 디버깅하거나 테스트하는 방법까지 RxJava 2.x로 리액티브 프로그래밍을 하는 데 필요한 기본 내용을 다룬다.

마블 다이어그램과 예제로 이해하자!
RxJava의 핵심 연산자들이 어떻게 작동하는지를 마블 다이어그램과 예제로 설명한다. Javadoc만으로는 이해하기 어려운 메서드의 작동 원리를 마블 다이어그램으로 시각화해 보여주고 연산자마다 예제를 제공하여 정확한 작동 원리를 파악할 수 있다. 이 예제들을 학습하면서 리액티브 프로그래밍의 개념을 확실히 이해하고 개발하는 데 필요한 적절한 연산자를 선택할 수 있을 것이다.

RxJava의 기본에 충실하자!
RxJava는 안드로이드 라이브러리와 기타 라이브러리를 포함하면 학습 범위가 너무 넓다. 안드로이드 라이브러리나 자체 연산자 개발 등의 확장 주제는 제외하고 RxJava의 기본 기능을 확실히 이해하고 사용하는 데 필요한 내용만 설명한다.


목차


1장 RxJava의 기본
1.1 RxJava와 리액티브 프로그래밍
_1.1.1 RxJava란
_1.1.2 리액티브 프로그래밍이란
_1.1.3 RxJava의 개요
_1.1.4 RxJava의 특징
1.2 Reactive Streams
_1.2.1 Reactive Streams란
_1.2.2 Reactive Streams의 구성
_1.2.3 Reactive Streams의 규칙
1.3 RxJava의 기본 구조
_1.3.1 기본 구조
_1.3.2 연산자
_1.3.3 비동기 처리
_1.3.4 Cold 생산자와 Hot 생산자
_1.3.5 ConnectableFlowable/ConnectableObservable
_1.3.6 Flowable/Observable을 Cold에서 Hot으로 변환하는 연산자
1.4 마블 다이어그램
1.5 RxJava 예제
_1.5.1 환경 구축
_1.5.2 Flowable 사용 예제
_1.5.3 Observable 사용 예제
1.6 RxJava의 전체 구성
_1.6.1 RxJava의 기본 구성
_1.6.2 Single/Maybe/Completable
_1.6.3 RxJava의 확장 모듈

2장 RxJava를 사용하는 데 필요한 배경 지식
2.1 람다식
_2.1.1 함수형 인터페이스
_2.1.2 람다식 문법
_2.1.3 람다식과 익명 클래스의 차이점
2.2 비동기 처리
_2.2.1 비동기 처리 시 주의할 점
_2.2.2 비동기 처리 시 발생하는 문제에 대한 대응 방안
_2.2.3 java.util.concurrent.atomic 패키지
_2.2.4 정리

3장 RxJava의 메커니즘
3.1 RxJava와 디자인 패턴
_3.1.1 옵저버 패턴
_3.1.2 이터레이터 패턴
3.2 비동기 처리
_3.2.1 RxJava에서 비동기 처리
_3.2.2 연산자 내에서 생성되는 비동기 Flowable/Observable
_3.2.3 다른 스레드 간 공유되는 객체
3.3 에러 처리
_3.3.1 소비자에게 에러 통지하기
_3.3.2 처리 재시도
_3.3.3 대체 데이터 통지
3.4 리소스 관리
_3.4.1 using 메서드
_3.4.2 FlowableEmitter/ObservableEmitter
3.5 배압
_3.5.1 request 메서드
_3.5.2 observeOn 메서드와 배압
_3.5.3 MissingBackpressureException
_3.5.4 메서드로 통지할 데이터양 제어하기

4장 Flowable과 Observable의 연산자
4.1 Flowable/Observable을 생성하는 연산자
_4.1.1 just
_4.1.2 fromArray/fromIterable
_4.1.3 fromCallable
_4.1.4 range/rangeLong
_4.1.5 interval
_4.1.6 timer
_4.1.7 defer
_4.1.8 empty
_4.1.9 error
_4.1.10 never
4.2 통지 데이터를 변환하는 연산자
_4.2.1 map
_4.2.2 flatMap
_4.2.3 concatMap/concatMapDelayError
_4.2.4 concatMapEager/concatMapEagerDelayError
_4.2.5 buffer
_4.2.6 toList
_4.2.7 toMap
_4.2.8 toMultimap
4.3 통지 데이터를 제한하는 연산자
_4.3.1 filter
_4.3.2 distinct
_4.3.3 distinctUntilChanged
_4.3.4 take
_4.3.5 takeUntil
_4.3.6 takeWhile
_4.3.7 takeLast
_4.3.8 skip
_4.3.9 skipUntil
_4.3.10 skipWhile
_4.3.11 skipLast
_4.3.12 throttleFirst
_4.3.13 throttleLast/sample
_4.3.14 throttleWithTimeout/debounce
_4.3.15 elementAt/elementAtOrError
4.4 Flowable/Observable을 결합하는 연산자
_4.4.1 merge/mergeDelayError/mergeArray/mergeArrayDelayError/mergeWith
_4.4.2 concat/concatDelayError/concatArray/concatArrayDelayError/concatWith
_4.4.3 concatEager/concatArrayEager
_4.4.4 startWith/startWithArray
_4.4.5 zip/zipWith
_4.4.6 combineLatest/combineLatestDelayError
4.5 Flowable/Observable 상태를 통지하는 연산자
_4.5.1 isEmpty
_4.5.2 contains
_4.5.3 all
_4.5.4 sequenceEqual
_4.5.5 count
4.6 Flowable/Observable 데이터를 집계하는 연산자
_4.6.1 reduce/reduceWith
_4.6.2 scan
4.7 유틸리티 연산자
_4.7.1 repeat
_4.7.2 repeatUntil
_4.7.3 repeatWhen
_4.7.4 delay
_4.7.5 delaySubscription
_4.7.6 timeout

5장 Processor와 Subject
5.1 Processor/Subject
_5.1.1 Processor/Subject란
_5.1.2 Processor/Subject의 종류
5.2 PublishProcessor/PublishSubject
5.3 BehaviorProcessor/BehaviorSubject
5.4 ReplayProcessor/ReplaySubject
5.5 AsyncProcessor/AsyncSubject
5.6 UnicastProcessor/UnicastSubject

6장 RxJava의 디버깅과 테스트
6.1 디버깅과 테스트
6.2 ‘do’로 시작하는 메서드
_6.2.1 doOnNext
_6.2.2 doOnComplete
_6.2.3 doOnError
_6.2.4 doOnSubscribe
_6.2.5 doOnRequest
_6.2.6 doOnCancel/doOnDispose
6.3 ‘blocking’으로 시작하는 메서드
_6.3.1 blockingFirst
_6.3.2 blockingLast
_6.3.3 blockingIterable
_6.3.4 blockingSubscribe
6.4 TestSubscriber/TestObserver
_6.4.1 TestSubscriber/TestObserver 생성
6.5 TestScheduler
_6.5.1 주요 메서드
_6.5.2 TestScheduler를 사용한 예제

찾아보기

도서소개


 

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 : 070-4821-5101
교환/반품주소
  • 부산광역시 부산진구 중앙대로 856 303호 / (주)스터디채널 / 전화 : 070-4821-5101
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.