출고예상일 안내
주문하신 상품이 한국에서 현지 배송을 위한 출고단계가 이루어질 것으로 예상되는 날짜입니다. 상품을 준비하는 과정에서 내부적인 사정으로 인해 출고예상일에 다소 오차가 생길 수 있습니다.
여러 상품(예약상품포함)을 함께 주문하신 경우 출고예상일이 가장 늦은 날짜에 맞춰 함께 배송됩니다.

RxJava를 활용한 리액티브 프로그래밍 RxJava의 개념과 사용법, 실무적용까지 안드로이드 활용 사례 포함
시리즈 : Programming Insight [27]
토마스 누르키비치, 벤 크리스텐센 저 | 인사이트 | 2017년 04월
ISBN : 9788966263066 / 406쪽 189 x 240 (㎜)
이 상품에 궁금하신점이 있으세요? 1:1상담문의

-
클리커, 이희영, 강민혁
-
오유나 외 14인
-
서길원, 김운호, 허상훈, 박재상, 박경규, 김종욱, 오윤우, 유지영
- 22,500
- 36,000
- 22,500
- 31,500
출판사 리뷰
} } //javascript .trim() function 오버라이드 String.prototype.trim \u003d function(){ return this.replace(/(^\\s*)|(\\s*$)/g, \"\"); } //url에 orderClick과 Kc값을 받아 add처리 해준다. function pd_makeClickParamUrl(linkUrl , orderClick , Kc){ var clickParam \u003d \"\"; if(typeof(orderClick) !\u003d 'undefined'){ if(orderClick.trim() !\u003d \"\"){ clickParam \u003d \"orderClick\u003d\"+orderClick.trim(); } } if(typeof(Kc) !\u003d 'undefined'){ if(Kc.trim() !\u003d \"\"){ clickParam \u003d (clickParam.trim() !\u003d \"\")?(clickParam+\"&Kc\u003d\"+Kc.trim()) : \"Kc\u003d\"+Kc.trim(); } } if(clickParam.trim() !\u003d \"\"){ linkUrl \u003d (linkUrl.indexOf(\"?\") \u003d\u003d -1)?(linkUrl+\"?\"+clickParam) : (linkUrl+\"&\"+clickParam); } return linkUrl; } //팝업(시리즈(seriesBookDetail)/총서(libraryBookDetail)/본문검색(bodyMatterSearch),북로그리뷰(memberReviewDetail),책속의 한문장(oneLineDetail)) function pd_goMultiPopupOpener(popupMode,orderClick,Kc){ jQuery(\"#multiPopupFrm\").find(\"input:[name\u003dpopupMode]\").val(popupMode); var popWidth \u003d 0; var popHeight \u003d 0; if(popupMode \u003d\u003d 'bodyMatterSearch'){ //본문검색 jQuery(\"#multiPopupFrm\").find(\"input:[name\u003ddocId]\").val(jQuery(\"#bodyMatterDocId\").val()); jQuery(\"#multiPopupFrm\").find(\"input:[name\u003dquery]\").val(jQuery(\"#bodyMatterQuery\").val()); popWidth \u003d 760; popHeight \u003d 700; }else if(popupMode \u003d\u003d 'memberReviewDetail'){ //북로그리뷰 popWidth \u003d 760; popHeight \u003d 700; }else if(popupMode \u003d\u003d 'oneLineDetail'){ //책속의 한문장 popWidth \u003d 760; popHeight \u003d 700; }else if(popupMode \u003d\u003d 'seriesBookDetail'){ //이 책의 시리즈 popWidth \u003d 760; popHeight \u003d 700; }else if(popupMode \u003d\u003d 'libraryBookDetail'){ //이 책의 총서 popWidth \u003d 760; popHeight \u003d 700; }else if(popupMode \u003d\u003d 'mediaSellerDetail'){ //이 책의 미디어셀러 popWidth \u003d 760; popHeight \u003d 700; }else if(popupMode \u003d\u003d 'relationBookDetail'){ //이 책의 연관도서 popWidth \u003d 760; popHeight \u003d 700; } window.open('','multiPopup','width\u003d'+popWidth+',height\u003d'+popHeight+',scrollb
1장 RxJava를 활용한 리액티브 프로그래밍
--리액티브 프로그래밍과 RxJava
--언제 리액티브 프로그래밍이 필요한가
--RxJava는 어떻게 동작하는가
--하드웨어 공감 - 블로킹 I/O와 논블로킹 I/O
--리액티브 추상화
2장 리액티브 익스텐션
--rx.Observable 해부하기
--Observable 알림 구독
--Subscription과 Subscriber[T]로 리스너 제어하기
--Observable 만들기
--사례: 콜백 API를 Observable 스트림으로
--rx.subjects.Subject
--ConnectableObservable
--요약
3장 연산자와 변환
--핵심 연산자: 매핑과 필터링
--여러 개의 Observable
--고수준 연산자: collect(), reduce(), scan(), distinct(), groupBy()
--skip(), takeWhile() 등을 사용해 잘게 쪼개거나 잘라내기
--사용자 정의 연산자 만들기
--요약
4장 기존 애플리케이션에 리액티브 프로그래밍 적용하기
--컬렉션에서 Observable로
--BlockingObservable: 리액티브 세상에서 벗어나기
--느긋함 포용하기
--Observable 구성하기
--명령형 방식의 동시성
--flatMap()을 비동기 체이닝 연산자처럼
--스트림으로 콜백 대체하기
--주기적으로 변경 사항을 폴링하기
--RxJava의 멀티 스레딩
--요약
5장 철저하게 리액티브로
--C10k 문제 해결하기
--HTTP 클라이언트 코드
--관계형 데이터베이스에 접근하기
--CompletableFuture와 스트림
--Observable과 Single
--요약
6장 흐름 제어와 배압
--흐름 제어
--배압
--요약
7장 테스트와 트러블슈팅
--오류 처리
--테스트와 디버깅
--단위 테스트
--모니터링과 디버깅
--요약
8장 사례 연구
--RxJava를 활용한 안드로이드 개발
--히스트릭스로 장애 관리하기
--NoSQL 데이터베이스 질의
--카멜 통합
--자바 8의 스트림과 CompletableFuture
--메모리 소비와 누수
--요약
9장 앞으로 나아갈 방향
--리액티브 스트림
--Observable과 Flowable
--성능
--마이그레이션
Appendix A HTTP 서버 예제
--C 언어의 fork() 프로시저
--연결당 스레드
--커넥션 스레드 풀
Appendix B Observable 연산자 판단 트리








































