상단으로 이동
상단으로 이동
회원리뷰[0)]

RxJava 리액티브 프로그래밍 데이터에 실시간으로 반응하는 새로운 패러다임을 배우자

저자 | 출판사 | 길벗
ISBN : 9791160507461   |  발행일 : 20190408  |  384
  • 정가 30,000원
    판매가 27,000 (10% 할인)
  • 적립포인트 1,500 적립 [5% 적립]
  • 무이자할부 1월 무이자 할부
    배송비 무료배송 (20,000원 이상 구매시 배송비 무료)
  • 스프링분철
IT/베스트셀러 > 컴퓨터/IT도서


도서소개

최근 모바일 기기 사용이 늘면서 시스템에서 처리할 이벤트나 데이터가 극단적으로 증가하고 있다. 이에 따라 대용량 데이터의 저장과 업데이트가 쉴 새 없이 이뤄지고 있고 심지어 이 데이터가 실시간으로 반영되기를 원한다. 이와 같은 변화는 기존 프로그래밍 방식으로는 처리하기가 어려워서 그 해결책으로 리액티브 프로그래밍이 주목받고 있다. 리액티브 프로그래밍은 데이터가 변경되는 흐름에 따라 자동으로 전파되는 프로그래밍 방식으로, 주로 GUI 입출력, 시간 경과에 따라 상태가 변화하는 처리, 비동기 통신을 하는 애플리케이션에 사용하기 적합하다.

이 책에서 다루는 RxJava은 이러한 요구 사항를 충족하는 자바 라이브러리로, 원래 서버 측의 비동기 처리를 단순화하고자 마이크로소프트가 공개한 Reactive Extensions를 넷플릭스가 자바에 도입한 것이다. RxJava는 서버 사이드뿐만 아니라 많은 이벤트 처리를 다뤄야 하는 안드로이드(Android)와도 궁합이 잘 맞아 안드로이드 개발에 인기가 높아지고 있다.

이 책은 리액티브 프로그래밍을 처음 접하는 사람을 위해 Reactive Streams부터 람다식과 비동기 처리까지 리액티브 프로그래밍의 기초를 다루며, 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를 사용한 예제

찾아보기

해시태그

#RxJava #리액티브 #프로그래밍 #데이터에 #실시간으로 #반응하는 #새로운 #패러다임을 #배우자

도서 리뷰작성!

평점
답변상태 문의답변 작성자 작성일

도서 문의작성!

배송 - 월요일~토요일 오전9시 이전에 입금 확인 된 주문은 다음날 배송받으실 수 있습니다.
- 토요일 발송분은 오전9시 이전 주문에 한하여 월요일 수령 가능 합니다.
(일부 제작상품 및 재고부족 도서 제외)
- 재고가 부족한 일부 상품의 경우 1~3일 정도 배송이 지연될 수 있습니다.
교환/반품 방법 1:1 문의 글 등록, 고객만족센터 (1544-1356) 전화 후 교환/반품 문의하시면 됩니다.
교환/반품 가능기간 출고 완료 후 7일 이내에 교환/반품/환불이 가능합니다.
교환/반품 비용 고객님 변심에 의한 반품, 환불, 교환 시 택배비는 본인 부담입니다.
교환/반품 불가사유 - 상담원과의 상담 없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
- 상품이 훼손된 경우 반품 및 교환, 환불이 불가합니다.
- 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한됩니다.
서브노트, 스프링 분철 교재 등은 교환이나 반품이 불가합니다.
상품 품절 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는 이메일과 문자로
안내해드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
- 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에
관한 사항은 소비자분쟁해결 기준 (공정거래위원회고시)에 준하여 처리됨
- 대금환불 및 환불지연에 따른 배상금 지급 조건, 절차등은 전자상거래 등에서의
소비자 보호에 관한 법률에 따라 처리됨