作品简介

本书对RxJava 2的源码进行了深入解读,让读者可以从设计到实现细节上全面了解它,从而达到不仅会用而且可以进行RxJava 2源码库组件级别的拓展的程度。本书的目的不仅是介绍RxJava 2,而且更希望通过一个成熟、优秀的代码库来向读者展示阅读源码的思路及编程方面的技巧,其中包含了并发编程的实战技巧、数据结构的设计方法、设计模式的使用方法、函数式编程的各种技巧等,希望读者可以深入思考并获得属于自己的一套编程方法论。这也是“Java编程方法论系列丛书”的初衷,授之以鱼不如授之以渔。

本书适合有Java编程基础的中高级Java开发工程师、想要学习代码设计思路与技巧的读者、对响应式编程感兴趣的读者阅读。

知秋,本名李飞,长期致力于基础代码库的研发工作,通过博客与视频平台bilibili,结合自己的经验做了大量源码解读的分享。对JDK、Spring、RxJava、Spring Reactor、Netty、Reactor-Netty等有很深刻的研究和独到的见解,并以此打造“Java编程方法论系列丛书”。基于开源精神,与志同道合的伙伴们一起创建了simviso开源分享团队,为开源社区服务。

作品目录

  • 作者简介
  • 推荐序一
  • 推荐序二
  • 推荐序三
  • 前言
  • 读者服务
  • 第1章 响应式编程总览(Reactive Programming)
  • 1.1 异步编程模式
  • 1.2 流(Stream)
  • 1.3 响应式流(Reactive Stream)
  • 1.4 响应式开发工具库
  • 1.5 Java 9中的响应式编程
  • 1.6 小结
  • 第2章 在RxJava中创建Observable
  • 2.1 响应式编程所涉及的设计模式
  • 2.2 解读reactivex.Observable
  • 2.3 小结
  • 第3章 RxJava 2中的操作
  • 3.1 核心操作
  • 3.2 多个Observable的合并操作
  • 3.3 高级操作
  • 3.4 小结
  • 第4章 对RxJava 2的设计探索
  • 4.1 源的创建设计思路
  • 4.2 中间操作的转承
  • 4.3 小结
  • 第5章 Observable实战
  • 5.1 初版架子实现
  • 5.2 基于架子实现一个汇率查询的服务
  • 5.3 rxjava-web-spring-boot-starter的抽取设计
  • 5.4 ObservableSseEmitter的设计实现
  • 5.5 小结
  • 第6章 RxJava 2中的多线程操作
  • 6.1 初探RxJava并发编程
  • 6.2 subscribeOn操作
  • 6.3 observeOn操作
  • 6.4 unsubscribeOn操作
  • 6.5 调度器Scheduler
  • 6.6 小结
  • 第7章 Flowable与背压
  • 7.1 回顾背压
  • 7.2 引入Flowable
  • 7.3 探索Flowable.create
  • 7.4 将一个Observable转化为一个Flowable
  • 7.5 通过onBackpressureXXX操作来实现背压策略
  • 7.6 Flowable.generate操作
  • 7.7 小结
  • 第8章 Flowable实战
  • 8.1 使用Flowable封装JDBC
  • 8.2 结合Spring Web应用使用Flowable
  • 8.3 单元测试
  • 8.4 controller层的实现逻辑改造
  • 8.5 小结
展开全部