《反应式编程实战 使用RxJava 2.x开发Android应用》[67M]百度网盘|pdf下载|亲测有效
《反应式编程实战 使用RxJava 2.x开发Android应用》[67M]百度网盘|pdf下载|亲测有效

反应式编程实战 使用RxJava 2.x开发Android应用 pdf下载

出版社 社会出版社
出版年 2020-09
页数 390页
装帧 精装
评分 8.6(豆瓣)
8.99¥ 10.99¥

内容简介

本篇主要提供反应式编程实战 使用RxJava 2.x开发Android应用电子书的pdf版本下载,本电子书下载方式为百度网盘方式,点击以上按钮下单完成后即会通过邮件和网页的方式发货,有问题请联系邮箱ebook666@outlook.com

编辑推荐

对于Android开发人员来说,编写多线程应用具有挑战性。RxJava简化了复杂的线程操作,并能够在线程之间无缝切换时保持适当的同步。在应用中RxJava还体现出了反应式编程的优势,它意味着更好的实时反应能力,是每个Android开发人员的圣杯。

《反应式编程实战 使用RxJava 2.x开发Android应用》内容分为三个部分。第一部分介绍如何在Android应用中使用RxJava处理异步事件和网络请求。第二部分以文件资源管理器应用和井字游戏应用为例说明如何使用视图模型优化体系结构,以及如何对RxJava代码进行单元测试。第三部分首先深入探讨如何使用WebSocket协议来构建实时聊天客户端应用,然后介绍如何使用Rx和视图模型进行动画UI高级开发,最后展示如何在RxJava中完整创建可拖动和可缩放的地图客户端应用。另外,本书的所有章节都有完整的公开在线代码示例。


内容简介

  对于Android开发人员来说,编写多线程应用具有挑战性。Rxjava简化了复杂的线程操作,并能够在线程之间无缝切换时保持适当的同步。Rxjava还为应用带来了反应式编程的优势,这意味着更好的实时反应能力,是每个Android开发人员的圣杯。
  《反应式编程实战使用Rxjava 2.x开发Android应用》首先引导读者以反应的方式考虑编程和数据。该书详细介绍Android中Rxjava的核心模式,并解释视图模型。然后探讨备受追捧的应用功能,例如聊天客户端和巧妙的转换。最后,读者将了解与函数式反应式编程(FRP)思维紧密结合的高层设计关注点、架构方法和框架。
  主要内容:
  反应式编程简介
  简单的线程管理
  提高UI反应能力
  异步思维方式
  构建一个有效的聊天客户端
  读者对象:
  读者应该具备一些构建Android应用的经验,但不必具有使用Rxjava的经验。



作者简介

  Timo Tuominen,作为三星重大Android项目的架构师,Timo Tuominen在与Futurice合作时已广泛使用了FRP和Rxjavao。

内页插图

精彩书评

  ★“该书是对一个复杂话题的精彩介绍。其中的示例足够真实,在编写自己的应用时非常有用,不会让你陷入无关紧要的细节中。”
  ——Mark Elston,Advantest America
  
  ★“该书既清晰又实用,出色地展示了Rxjava在构建Android应用方面的强大功能。”
  ——Cody Sand,Sandtoken
  
  ★“编写能够正确处理异步事件的代码很棘手,该书介绍的Rxjava可以使代码编写更容易。”
  ——Burk Hufnagel,Daugherty Business Solutions

目录

第Ⅰ部分 反应式核心编程
第1章 反应式编程简介
1.1 你阅读本书的原因
1.2 不要阅读本书的情形
1.3 00P、Rx、FP和FRP
1.3.1 00P,面向对象编程
1.3.2 FP,函数式编程
1.3.3 FRP,函数反应式编程
1.3.4 Rx反应式编程
1.4 Rx的特征
1.5 编写的代码就是所实现的功能
1.5.1 灰色代码
1.5.2 反应式编程开发
1.6 反应式总览
1.6.1 移动开发
1.6.2 Web和HTML5
1.6.3 后端系统和Rx
1.7 在开始学习之前你需要知道什么
1.7.1 你需要具备的条件
1.7.2 你不需要具备的条件
1.8 关于本书
1.8.1 在线代码示例
1.8.2 茶歇
1.9 Rxjava2和Android
1.9.1 为什么选择Java
1.9.2 为什么选择Rxjava
1.10 设置Android环境
1.10.1 GoogleAndroid StudiO
1.10.2 Git
1.10.3Rxjava2依赖项
1.11 JaVa 8 larnbda
1.11.1 什么是lambda函数
1.1 1.2 剖析lambda函数
1.1 1.3 lambda函数有什么优点
1.12 深入研究Rx:实时搜索
1.13 项目设置
1.13.1 一种快速实现
1.13.2 基于时间筛选文本更改
1.14作为数据的emitter的文本输入
1.15 发布-订阅模式
1.16 作为observable的文本输入
1.17筛选observable
1.17.1 .filter操作符
1.17.2 0bservable和subscriber的时间解耦
1.18 时间延迟
1.19 延迟时间的优势
1.20 debounce操作符
1.21 将代码放入Android系统中
1.22 反应式编程的原理
1.23 事件和弹珠图
1.24 本章小结
第2章 连接observable
2.1 Rxjava和事件流
2.2 subscriber
2.3 Rxjava2 0bservable的类型
2.3.1 0bservable
2.3.2 Single
2.3.3 Maybe
2.3.4 Completable
2.3.5 Flowable
2.4 订阅并转换不同的ObServable
2.5 当发出正常的网络请求时会发生什么
2.6 当observable发出网络请求时会发生什么
2.7 网络请求作为ObSerVable
2.8 示例:RSS提要聚合器
2.9 提要结构
2.10 获取数据
2.11 combineLatest操作符
2.12 到目前为止的Rx代码
2.13 异步数据处理链
2.14 按顺序排列列表
2.15.map操作符
2.15.1 操作符的有效期
2.15.2 使用.map对列表进行排序
2.16 不变性简介
2.16.1 不具有不变性的链
2.16.2 具有不可变数据的链
2.16.3 使用不变性解决问题
2.16.4 Java中的builder
2.17 错误处理
2.17.1 网络错误及其处理
2.1 7.2 当真正的错误出现时该怎么办
2.18 向客户端添加更多提要
2.18.1 提要observable列表
2.18.2 细说combineLatest
2.18.3 有多个弹珠的combineLatest
2.19 本章小结
2.19.1 未来展望
2.19.2 从事件到反应式状态
第3章 建立数据处理链
3.1 0bservable的不同角色
……
第Ⅱ部分 Rxjava中的架构
第Ⅲ部分 高级Rxjava架构

前言/序言

  有趣的是,在介绍反应式编程之前,我们首先了解一种反应性较弱的平台:Adobe Flash。在被Adobe收购之前,Macromedia构建了一个名为Flex的成熟框架(后来被称为Apache Flex)。Flex中的一个重要概念是每个呈现组件的setData函数。setData函数的作用是接收一个数据对象,它完全包含组件需要呈现的信息。尽管一直没有完全弄清楚如何在原始源和组件预期接收的内容之间转换数据,但我从年轻时就一直致力于编写灵活的DirectX C++代码,这是一个很好的关注点分离。
  六年前,由于有了一些平台,我开始与三星公司合作项目。在这个过程中,我尝试将我在Futurice公司工作期间学到的Flex相关知识应用到不同的环境中,以获得不同的结果,但最终产生了更多的概念性问题却不知道答案。
  这一次的任务是在Android上创建一个实时体育应用,其中包含一系列具有不同形式和延迟的数据源。我们经常会收到部分数据,但这些数据只用于更新比赛成绩。使用标准工具构建系统似乎非常重要。和经典故事的剧情一样,我的同事Juha Ristolainen曾经读过一篇关于Rxjava这个新工具的博文。我想我可以试一试。
  必须承认的是,掌握Rxjava并将其应用到数据处理问题领域是我学习新技术期间印象最深刻的一次经历。具有讽刺意味的是,第一次经历是在20年前我学Java编程时。查看Rxjava已启用的功能,就像一次又一次地寻找拼图中缺失的那些块,我甚至都没有意识到这些块已经丢失。
  四年后,事实证明Rxjava虽然有明确的概念,但使用起来并不简单。为了掌握其用法,我的同事Olli Jokinen和我花费了数晚时间,试图彻底弄明白这种尚未发布的技术。当时Rxjaval还处于Beta测试阶段。最终,我们解决了代码中的问题,代码库也成为我有幸用过的最出色的一种代码库。
  你手里拿着的是一本花费数千小时撰写的书,它会告诉你如何使用Rxjava进行Android应用开发。这也是我撰写这本书的初衷。