展开全部

主编推荐语

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

内容简介

本书首先通过一个简单RxJava程序勾勒出使用RxJava的基本步骤。然后开始介绍RxJava的基本概念,同时还用实例讲解如何使用一些常用的创建操作符。接下来会学习RxJava的线程处理,以及更多的操作符包括:变换操作、过滤操作、条件操作、布尔操作、结合操作和连接操作。接着学习RxJava的高级特性,包括RxJava的BackPressure,以及RxJava2.x时如何使用各种BackPressure策略。Disposable的使用,RxJava1.x将Subscription改名为Disposable,以及CompositeDisposable的使用。最后,学习Parallel flows,它是RxJava2.0.引入的新特性。最后讲解其他的函数式编程,包括Java9的新特性、RxKotlin。

目录

  • 版权信息
  • 内容简介
  • 前言
  • 编写这本书的目的
  • 读者对象
  • 如何阅读本书
  • 勘误和支持
  • 致谢
  • 读者服务
  • 第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
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

电子工业出版社

电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。