我最近寫了一本書《RxJava 2.x 實(shí)戰(zhàn)》惧财。
該書由電子工業(yè)出版社出版靡努,目前已經(jīng)在淘寶、京東宰翅、當(dāng)當(dāng)弃甥、亞馬遜等各大電商平臺上進(jìn)行銷售或預(yù)售。
京東自營
https://item.jd.com/12341530.html
天貓電子工業(yè)出版社旗艦店
https://detail.tmall.com/item.htm?spm=a230r.1.14.6.17f86a7aOVLVVU&id=569144667199
電子工業(yè)出版社
https://www.phei.com.cn/module/goods/wssd_content.jsp?bookid=51847
當(dāng)當(dāng)
http://product.dangdang.com/25258002.html
亞馬遜
https://www.amazon.cn/dp/B07BZ5HSXL/
為什么要寫這本書
我從2015年開始關(guān)注RxJava以及響應(yīng)式編程汁讼,當(dāng)時網(wǎng)上的資料很少淆攻。三年后的今天,我們可以看到越來越多的App都在使用Rx相關(guān)的技術(shù)嘿架。在Java后端瓶珊,Spring 5也開始支持響應(yīng)式編程。在開源的技術(shù)社區(qū)里耸彪,Rx伞芹、響應(yīng)式編程、函數(shù)式編程都是熱門話題蝉娜。本書通過完整的體系來介紹RxJava的方方面面唱较,也有助于查找和翻閱。
本書適合剛?cè)腴TRxJava的讀者召川,也適合完全沒有入門的讀者南缓。
對于不了解響應(yīng)式編程的開發(fā)者,RxJava的入門可能會有一些難度荧呐。我結(jié)合自身的學(xué)習(xí)經(jīng)歷以及使用情況汉形,盡可能地使用通俗易懂的文字帶領(lǐng)大家學(xué)習(xí)RxJava。同時倍阐,本書還附有豐富的例子概疆,從Android開發(fā)到Java后端的開發(fā),相信能夠讓大家感受到RxJava的魅力峰搪。
本書的主要內(nèi)容
本書從響應(yīng)式編程岔冀、函數(shù)式編程的概念開始,講述了RxJava的優(yōu)點(diǎn)以及它的用途概耻。
然后楣颠,開始講述RxJava的重要概念包括Observables、Subject咐蚯、Processor等等,以及如何使用RxJava弄贿。
在使用RxJava時春锋,操作符是必不可少的,本書介紹了常用的一些操作符差凹。例如:創(chuàng)建操作符期奔、變換操作符侧馅、過濾操作符、條件操作符呐萌、布爾操作符馁痴、合并操作符和連接操作符。
除了操作符之外肺孤,RxJava是一個為異步編程而實(shí)現(xiàn)的庫罗晕。本書也詳細(xì)介紹了RxJava的線程操作以及線程模型。在異步的場景之下赠堵,我們有可能會遇到“Back Pressure”的情況小渊。本書介紹了什么是“Back Pressure”,并分別介紹了RxJava 1.x 和 2.x是如何處理“Back Pressure”的茫叭。
本書例子比較豐富酬屉,包含RxJava在Android上的使用以及在Java后端的使用。
最后揍愁,還講述了Java 8的函數(shù)式編程的特性呐萨,以及對未來編程方式的展望。
如何閱讀本書
本書一共分為18章莽囤。
第1章是講述了RxJava的來龍去脈谬擦,以及什么是響應(yīng)式編程、什么是函數(shù)式編程烁登。
第2章-第7章講述了RxJava的基礎(chǔ)概念以及RxJava常用的操作符怯屉。
第8章-第10章為RxJava的高級部分。
第11章-第12章為RxAndroid的使用篇饵沧,介紹了常用的RxBinding锨络、Retrofit等框架。
第13章-第15章為RxJava的實(shí)戰(zhàn)篇狼牺,介紹了如何實(shí)現(xiàn)一個基于RxJava的Event Bus框架羡儿,以及Spring Boot如何跟RxJava相結(jié)合使用。
第16章-第18章介紹了Java 8函數(shù)式編程的特性是钥、Kotlin掠归、以及展望未來。
致謝
感謝公司的支持以及同事的幫助悄泥,特別是劉志強(qiáng)幫我整理了很多RxJava相關(guān)的資料以及對本書部分章節(jié)進(jìn)行了試讀虏冻,并提出意見。
感謝電子工業(yè)出版社的安娜編輯對本書嚴(yán)謹(jǐn)?shù)膶徯9ぷ鳌?/p>
感謝Branch Metrics首席數(shù)據(jù)科學(xué)家余侃以及Google Lens tech leader雷加貝能夠幫忙做推薦弹囚。