RxJava2.x实战

RxJava2.x实战

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

类似推荐

编辑推荐

《RxJava基本概念与操作符实例讲解》

内容简介

本书首先讲解了函数式响应式编程的概念,包括Observables、Subject、Processor 等,以及RxJava的优点和用途。然后讲解了RxJava 中必不可少的操作符,包括创建操作符、变换操作符、过滤操作符、条件操作符、布尔操作符、合并操作符和连接操作符。接着详细介绍了RxJava 的线程操作及线程模型,用大量的实例,讲解了RxJava 在Android 上和在Java 后端的使用。最后,介绍了Java 8 的函数式编程的特性,以及对未来编程方式的展望。本书适合Android 开发工程师、Java 后端开发工程师,以及对函数响应式编程、感兴趣的IT 从业人员。

章节目录

版权信息

内容简介

前言

编写这本书的目的

读者对象

如何阅读本书

勘误和支持

致谢

读者服务

第1章 RxJava简介

1.1 你需要了解的函数响应式编程

1. 响应式编程(Reactive Programming,简称RP)

2. 函数式编程(Functional Programming,简称FP)

3. 函数响应式编程(Functional Reactive Programming,简称FRP)

1.2 RxJava简介

1. RxJava产生的由来

2. 什么是Rx

3. ReactiveX的历史

4. Rx模式

1.3 为何选择RxJava

1. Observable是如何实现的

2. 使用回调存在很多问题

3. Rx是一个多语言的实现

4. 响应式编程

1.4 RxJava能做什么

1.5 RxJava 2的Hello World

1.6 小结

第2章 RxJava基础知识

2.1 Observable

do操作符

2.2 Hot Observable和Cold Observable

1. Observable的分类

2. Cold Observable

3. Cold Observable如何转换成Hot Observable

4. Hot Observable 如何转换成 Cold Observable

2.3 Flowable

2.4 Single、Completable和Maybe

1. Single

2. Completable

3. Maybe

4. 小结

2.5 Subject和Processor

2.5.1 Subject 是一种特殊的存在

1. Subject的分类

2. Processor

小结

2.6 小结

第3章 创建操作符

3.1 create、just和from

1. create

2. just

3. from

3.2 repeat

1. repeatWhen

2. repeatUntil

3.3 defer、interval和timer

1. defer

2. interval

3. timer

3.4 小结

第4章 RxJava的线程操作

4.1 调度器(Scheduler)种类

1. RxJava线程介绍

2. Scheduler

4.2 RxJava线程模型

1. 线程调度器

2. 线程调度

3. 示例

4.3 Scheduler的测试

4.4 小结

第5章 变换操作符和过滤操作符

5.1 map和flatMap

1. map操作符

2. flatmap操作符

5.2 groupBy

5.3 buffer和window

1. buffer操作符

2. window操作符

5.4 first和last

1. first操作符

2. last操作符

5.5 take和takeLast

1. take操作符

2. takeLast操作符

5.6 skip和skipLast

skip操作者

2. skipLast操作符

5.7 elementAt和ignoreElements

1. elementAt操作符

2. ignoreElements

5.8 distinct和filter

1. distinct操作符

2. filter操作符

5.9 debounce

5.10 小结

第6章 条件操作符和布尔操作符

6.1 all、contains和amb

1. all操作符

2. contains操作符

2. amb操作符

6.2 defaultIfEmpty

6.3 sequenceEqual

6.4 skipUntil和skipWhile

1. skipUntil操作符

2. skipWhile操作符

6.5 takeUntil和takeWhile

1. takeUntil操作符

2. takeWhile操作符

6.6 小结

第7章 合并操作符与连接操作符

7.1 merge和zip

1. merge操作符

2. zip

7.2 combineLatest和join

1. combineLatest操作符

2. join操作符

7.3 startWith

7.4 connect、push和refCount

7.5 replay

7.6 小结

第8章 RxJava的背压

8.1 背压

8.2 RxJava 2.x的背压策略

1. MISSING

2. ERROR

3. BUFFER

4. DROP

5. LATEST

8.3 小结

第9章 Disposable和Transformer的使用

9.1 Disposable

9.2 RxLifecycle和AutoDispose

1. RxLifecycle

2. AutoDispose

9.3 Transformer在RxJava中的使用

1. Transformer的用途

2. 与compose操作符结合使用

9.4 小结

第10章 RxJava的并行编程

10.1 RxJava并行操作

1. 借助flatMap实现并行

2. 通过Round-Robin算法实现并行

10.2 ParallelFlowable

10.2.1 ParallelFlowable介绍

1. ParallelFlowable实现并行

2. ParallelFlowable 与 Scheduler

10.2.2 ParallelFlowable的操作符

10.2.3 ParallelFlowable和Flowable.flatMap比较

10.3 小结

第11章 RxBinding的使用

11.1 RxBinding简介

1. RxBinding介绍

2. 响应式的Android UI

11.2 RxBinding使用场景

1. 点击事件

2. 长点击事件

3. 防止重复点击

4. 表单的验证

5. 获取验证码倒计时

6. 对RecyclerView的支持

7. 对UI控件进行多次监听

11.3 RxBinding结合RxPermissions的使用

11.3.1 Android 6.0之后权限的改变

11.3.2 RxPermission的介绍

11.3.3 RxBinding结合RxPermissions

1. 在RxBinding中使用RxPermissions

2. RxBinding结合compose,使用RxPermissions

3. 使用多个权限的用法

11.4 RxBinding使用的注意点

11.5 小结

第12章 RxAndroid 2.x和Retrofit的使用

12.1 RxAndroid 2.x简介

1. 介绍

2. 使用

12.2 Retrofit简介

12.3 Retrofit与RxJava的完美配合

12.4 小结

第13章 开发EventBus

13.1 传统的EventBus

13.2 开发一个新的EventBus(一)

13.3 开发一个新的EventBus(二)

13.4 开发一个新的EventBus(三)

13.5 开发一个新的EventBus(四)

13.6 小结

第14章 使用RxJava封装HttpClient 4.5

14.1 HttpClient的介绍

14.2 使用RxJava进行重构

14.3 实现一个简单的图片爬虫

14.4 小结

第15章 Spring Boot和RxJava 2

15.1 模拟Task任务

1. Spring

2. Spring Boot

15.2 构建一个给爬虫使用的代理IP池

1. 设计一个代理IP池

2. 数据存MongoDB

3. 具体实现

4. 定时任务

5. 展示到前端

15.3 小结

第16章 Java 8的函数式编程

16.1 Java 8的新变化

16.2 函数是一等公民

16.3 Lambda表达式

1. JDK中的函数式接口举例

2. 简化的Lambda ——方法引用(Method Reference)

16.4 Java 8新增的Stream

16.4.1 Stream的特性

16.4.2 Java 8新增的函数式接口

1. Function

2. Predicate

3. Consumer

4. Supplier

16.4.3 Stream用法

1. Stream的创建

2. 中间操作

3. 结束操作

16.4.4 并行流

16.5 函数的柯里化

1. 借助Java 8实现柯里化

2. 柯里化的好处

16.6 新的异步编程方式CompletableFuture

1. Future

2. CompletableFuture介绍

2. CompletableFuture介绍

3. CompletableFuture特性

4. CompletableFuture VS Java8 Stream VS RxJava 1 & RxJava 2

16.7 小结

第17章 Kotlin和RxJava

17.1 Kotlin简介

1. 为何需要Kotlin?

2. Kotlin 概述

17.2 使用Kotlin来封装图像框架

1. Kotlin + RxJava 2 封装滤镜的操作

2. DSL风格的编程

3. Anko

4. 封装cv4j图像处理框架

17.3 小结

第18章 展望未来

18.1 期待已久的Java 9

18.2 其他的Reactive Streams项目

1. Reactor 3

2. Akka Streams

3. Vert.x

4. Slick

18.3 小结

附录A RxJava常用的操作符列表

附录B RxJava中常用的library

B.1 Android相关的library

1. RxLifecycle

2. RxLifecycle

3. AutoDispose

4. RxBinding

5. Retrofit

6. sqlbrite

7. Android-ReactiveLocation

8. RxLocation

9. rx-preferences

10. RxPermissions

11. ReactiveNetwork

12. RxDownload

B.2 Java服务端相关的library

1. Hystrix

2. rxjava-jdbc

3. Camel RX

4. vertx-rx

5. async-http-client

RxJava2.x实战是2018年由电子工业出版社出版,作者沈哲。

得书感谢您对《RxJava2.x实战》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
机器学习实战 电子书
《机器学习实战》面向日常任务的高效实战内容,介绍并实现机器学习的主流算法。
ExcelVBA案例实战 电子书
本书以案例讲解的形式,由浅入深地介绍了VBA在Excel中的应用。
AppInventor开发实战 电子书
App Inventor是MIT开发的流行的可视化编程工具,编程爱好者可以在短时间学会创建炫目的安卓手机应用。
鸿蒙应用开发实战 电子书
本书为华为鸿蒙系统HarmonyOS开发图书,以JavaScript为开发语言,提供完整源代码。
机器学习工程实战 电子书
机器学习入门手册《机器学习精讲》姊妹篇,人工智能和机器学习领域专业人士的多年实践结晶,深入浅出讲解机器学习应用和工程实践。