标签
内容简介
本书是RxJava领域的实战型技术指南,由RxJava项目核心贡献者参与撰写,原书英文版由O'Reilly出版(原书名Reactive Programming with RxJava: Creating Asynchronous, Event-Based Applications)。全书围绕RxJava的基本概念、Observable/Observer/Operator三者协作机制、操作符体系展开,先讲清“推送与拉取”“同步与异步”“并发与并行”“延迟执行与立即执行”“阻塞与非阻塞I/O”等反应式思维的基础命题,再带领读者用源码级视角剖析Observable的创建与订阅、Subject与ConnectableObservable、hot/cold 流差异、流控与回压策略、线程调度与错误处理,并说明如何把RxJava嵌入既有代码库,逐步改造回调式API,完成一个端到端的反应式应用。书中特别收录了RxJava 1.0与2.0的异同对照,便于已有1.x经验的读者迁移;同时涉及基于Rx的单元测试、调试排错与维护话题。书中包含大量可直接对照的示例,兼顾Android移动端这一RxJava最主要的应用场景。中文版共306页(正文前附xxii页),由张卫滨翻译,属图灵程序设计丛书·移动开发方向。全书偏向中高级Java开发者的工程实践,而非入门语法手册。
编辑推荐
反应式编程的概念不难懂,难在真正落到工程里:什么时候该用,Observable该怎么搭,回压崩了怎么办,老代码怎么迁到新版本。这本书的写法正对这些问题——它不是操作符手册,而是先把“推送与拉取”“同步与异步”“并发与并行”这些容易混为一谈的底层命题讲透,再带你逐层搭起可用的反应式结构。作者的背景值得一提:两位都在一线工程环境中打磨过敏捷、可扩展的分布式系统,其中一位直接参与过RxJava项目的贡献,因此书中对Observable内部机制、hot/cold 流、Subject、ConnectableObservable 的解说往往比二手教程更贴近实现。全书编排也照顾了迁移期的读者:除了常规的流控、回压、调度与错误处理,还专门用篇幅对照RxJava 1.0 与 2.0 的差异,让手上有老代码的人有路可走。译者张卫滨长期从事Java技术图书翻译,此前译有《Spring实战》《Spring Data实战》《反应式Web应用开发》,术语体系相对统一,读起来不容易被译名绊住。如果你在Android或服务端写过回调套回调的代码,被“回调地狱”折磨过,这本书提供的不是零碎技巧,而是一套重新组织异步逻辑的思路。
适合谁读
适合
- 有若干年Java开发经验、正在处理复杂异步逻辑的中高级程序员
- Android开发者,希望用RxJava重构回调嵌套、事件分发的代码结构
- 系统架构师,需要评估是否在项目中引入反应式方案
- 已在使用RxJava 1.x、准备迁移到2.0的工程师
- 对响应式/反应式编程范式感兴趣、想了解其底层机制的技术读者
不适合
- 完全没有Java基础、尚未写过并发程序的初学者
- 只想找一本操作符速查字典、不需要理解原理的读者
- 使用其他语言栈、仅想了解函数式响应式概念的读者
阅读建议
- 第1章务必慢读,先弄清推送/拉取、同步/异步、并发/并行这三组区分,后面才不容易混淆。
- 边读边在IDE里敲示例,把书中的Observable改成自己项目里的一段真实数据流。
- 读流控与回压章节时,配合一个生产者速度明显快于消费者的场景做实验,观察不同策略的差异。
- 若手上是RxJava 1.x代码,先读版本差异部分,再回头对照自己代码中已废弃的API。
出版社简介
人民邮电出版社
中国 · 成立于 1953 年
人民邮电出版社以科技、计算机与信息通信类图书见长,并由此延伸至摄影、艺术、软件学习与励志成长等门类,形成较为多元的出版方向。库内图书既涵盖《重构与模式(修订版)》《华为交换机学习指南(第二版)》等计算机与通信技术读物,也收录《小王子(中英法彩绘典藏纪念版)》《了不起的盖茨比》《假如给我三天光明》等双语典藏类作品;《北京十年:1980-1990》与《鬼刀 WLOP个人插画作品集》则体现其在摄影与艺术领域的布局。作者资源包括安东尼·圣埃克苏佩里、海伦·凯勒、Joshua Kerievsky、王达、张兆增与WLOP等。
目录
- 本书赞誉
- 译者序
- 序
- 前言
- 第1章 使用RxJava实现反应式编程
- 1.1 反应式编程与RxJava
- 1.2 何时需要反应式编程
- 1.3 RxJava是如何运行的
- 1.4 阻塞I/O与非阻塞I/O
- 1.5 反应式抽象
- 第2章 Reactive Extensions
- 2.1 剖析rx.Observable
- 2.2 订阅来自Observable的通知
- 2.3 使用Subscription和Subscriber控制监听器
- 2.4 创建Observable
- 2.5 用例:从回调API到Observable流
- 2.6 rx.subjects.Subject
- 2.7 ConnectableObservable
常见问题
这本书适合零基础学RxJava吗?
不太适合。书中默认读者熟悉Java语法与多线程基本概念,重点在于反应式思维和工程落地,而非操作符入门讲解;零基础读者建议先补Java并发与Lambda基础。
书里讲的是RxJava 1.0还是2.0?
以RxJava 2.0为主,并特别收录了1.0与2.0的异同比较,方便仍有1.x代码的读者完成迁移。
内容会覆盖Android开发吗?
会。RxJava最主要的应用场景之一就是Android,书中结合移动端开发场景讲解流控制、回压处理与单元测试等关键技术环节。
中文版是哪一年、哪家出版社出的?
中文版由张卫滨翻译,人民邮电出版社于2019年12月出版,属图灵程序设计丛书,ISBN为978-7-115-52400-3,全书306页。
读者评论
查询本书
本站为索引目录:「全网查询」由您发起、在您的浏览器中运行,所列入口均指向第三方站点,请自行判断可用性。