前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Android:图文解析带你快速了解RxJava的底层原理

Android:图文解析带你快速了解RxJava的底层原理

作者头像
Carson.Ho
发布2019-10-28 14:37:29
1.1K0
发布2019-10-28 14:37:29
举报
文章被收录于专栏:Android知识分享Android知识分享

前言

  • Rxjava由于其基于事件流的链式调用、逻辑简洁 & 使用简单的特点,深受各大 Android开发者的欢迎。
Github截图
Github截图

如果还不了解RxJava,请看文章:Android:这是一篇 清晰 & 易懂的Rxjava 入门教程

  • 今天,carson今天将采用 图文的方式 解析 Rxjava的基本原理,希望大家会喜欢。
示意图
示意图

目录

示意图
示意图

1. 定义

  • RxJavaGitHub 的介绍:
代码语言:javascript
复制
RxJava:a library for composing asynchronous and event-based programs using observable sequences for the Java VM
// 翻译:RxJava 是一个在 Java VM 上使用可观测的序列来组成异步的、基于事件的程序的库
  • 总结:RxJava 是一个 基于事件流、实现异步操作的库

2. 作用

实现异步操作

类似于 Android中的 AsyncTaskHandler作用


3. 特点

由于 RxJava的使用方式是:基于事件流的链式调用,所以使得 RxJava

  • 逻辑简洁
  • 实现优雅
  • 使用简单

更重要的是,随着程序逻辑的复杂性提高,它依然能够保持简洁 & 优雅


4. 生活例子引入

我用一个生活例子引入 & 讲解 Rxjava原理: 顾客到饭店吃饭

示意图
示意图
示意图
示意图

5. 原理介绍

5.1 概述

Rxjava原理 基于 一种扩展的观察者模式,整个模式中有4个角色:

角色

作用

类比

被观察者(Observable)

产生事件

顾客

观察者(Observer)

接收事件,并给出响应动作

厨房

订阅(Subscribe)

连接 被观察者 & 观察者

服务员

事件(Event)

被观察者 & 观察者 沟通的载体

菜式

5.2 具体描述

请结合上述 顾客到饭店吃饭 的生活例子理解:

示意图
示意图
示意图
示意图

5.3 总结

RxJava原理可总结为:

  • 被观察者 (Observable) 通过 订阅(Subscribe) 按顺序发送事件 给观察者 (Observer)
  • 观察者(Observer) 按顺序接收事件 & 作出对应的响应动作。具体如下图:
示意图
示意图

至此,关于RxJava原理讲解完毕。


6. 总结

  • 本文主要对 Rxjava 的原理进行图文讲解
  • 接下来,我将持续推出 AndroidRxjava 2.0 的一系列文章,包括原理、操作符、应用场景、背压等等
示意图
示意图

请点赞!因为你的鼓励是我写作的最大动力!

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-08-28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 目录
  • 1. 定义
  • 2. 作用
  • 3. 特点
  • 4. 生活例子引入
  • 5. 原理介绍
    • 5.1 概述
      • 5.2 具体描述
        • 5.3 总结
        • 6. 总结
        • 请点赞!因为你的鼓励是我写作的最大动力!
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档