《RxJava响应式编程》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:李衍顺著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2018
  • ISBN:9787121336409
  • 页数:218 页
图书介绍:RxJava是一个在 Java VM 上使用可观测的序列来组成异步的、基于事件的程序的库,能十分简洁地表现复杂逻辑。本书分4部分介绍RxJava,涵盖响应式编程基础、RxJava中众多操作符,并给出多个应用实例,最后讲解了RxJava 2的一些新特点,带领读者循序渐进学习使用RxJava进行Android开发,享受函数响应式编程带来的乐趣。

第1章 走进RxJava的世界 1

1.1响应式编程 1

1.2什么是RxJava 4

1.3 Observable和Subscriber 5

1.3.1 Single:单个数据的生产者 8

1.3.2 Completable:单个事件的生产者 9

1.4在Android工程中引入RxJava 11

第2章 RxJava中的操作符 12

2.1创建Observable的操作符 12

2.1.1 range 13

2.1.2 defer和just 13

2.1.3 from 16

2.1.4 interval 17

2.1.5 repeat和timer 19

2.2转化Observable的操作符 21

2.2.1 buffer 21

2.2.2 flatMap 23

2.2.3 groupBy 25

2.2.4 map 28

2.2.5 cast 29

2.2.6 scan 31

2.2.7 window 32

2.3过滤操作符 35

2.3.1 debounce 35

2.3.2 distinct 39

2.3.3 elementAt 40

2.3.4 filter 41

2.3.5 first和last 43

2.3.6 skip和take,skipLast和takeLast 45

2.3.7 sample和throttleFirst 46

2.4组合操作符 48

2.4.1 combineLatest 48

2.4.2 join和groupJoin 51

2.4.3 merge和mergeDelayError 55

2.4.4 startWith 58

2.4.5 switch 59

2.4.6 zip和zipWith 61

2.5错误处理操作符 64

2.5.1 onErrorRetum 64

2.5.2 onErrorResumeNext 66

2.5.3 onExceptionResumeNext 67

2.5.4 retry 70

2.6辅助操作符 72

2.6.1 delay 72

2.6.2 do 74

2.6.3 materialize和dematerialize 78

2.6.4 subscribeOn和observeOn 80

2.6.5 timeInterval和hmeStamp 82

2.6.6 timeout 84

2.6.7 using 87

2.7条件操作 90

2.7.1 all 90

2.7.2 amb 92

2.7.3 contains 93

2.7.4 isEmpty 94

2.7.5 defaultIfEmpty 95

2.7.6 sequenceEqual 97

2.7.7 skipUntil和skipWhile 98

2.7.8 takeUntil和takeWhile 100

2.8聚合操作符 102

2.8.1 concat 102

2.8.2 count 104

2.8.3 reduce 105

2.8.4 collect 106

2.9与Connectable Observable相关的操作符 107

2.9.1 publish和connect 108

2.9.2 refCount 110

2.9.3 replay 111

2.10自定义操作符 114

2.10.1 lift 115

2.10.2 compose 117

第3章 使用Scheduler进行线程调度 119

3.1什么是Scheduler 119

3.2 Scheduler的类型 121

3.2.1 computation 121

3.2.2 newThread 122

3.2.3 io 122

3.2.4 immediate 123

3.2.5 trampoline 123

3.2.6 from 123

3.3总结 125

第4章 RxJava的实现原理 126

4.1数据的发送和接收 126

4.1.1创建Observable的过程 127

4.1.2订阅的过程 128

4.2操作符的实现 130

4.2.1 lift的工作原理 130

4.2.2 map的工作原理 132

4.2.3 flatMap的工作原理 135

4.2.4 merge的工作原理 136

4.2.5 concat的工作原理 139

4.3 Scheduler的工作原理 144

4.3.1 Scheduler源码 144

4.3.2 subscribeOn的工作原理 152

4.3.3 observeOn的工作原理 156

第5章 RxJava的应用实例 161

5.1计算π的值 161

5.2图片的三级缓存 165

5.2.1内存缓存 167

5.2.2外存缓存 169

5.2.3网络缓存 172

5.2.4缓存管理 173

5.2.5封装 176

5.2.6运行测试 178

5.3结合Retrofit和OkHttp访问网络 181

5.3.1卡片类的定义 181

5.3.2配置OkHttp 183

5.3.3配置Retrofit 186

5.4使用RxLifecycle避免内存泄漏 189

5.4.1修改demo工程 189

5.4.2绑定其他生命周期 191

5.5使用RxBinding绑定各种View事件 193

5.5.1绑定点击事件 194

5.5.2绑定TextWatcher 196

5.5.3绑定OnPageChangeListener 197

第6章 RxJava 2的改进 200

6.1 Observable和Flowable 200

6.2 null的使用 203

6.3 Single和Completable 205

6.4 Maybe 207

6.5 Subscriber 208

6.5.1 DefaultSubscriber 209

6.5.2 ResourceSubscriber 210

6.5.3 Disposable Subscriber 211

6.6 Action和Function 212

6.7错误处理 214

6.8 Scheduler 216