正文
前言
-
Rxjava
由于其
基于事件流的链式调用、逻辑简洁 & 使用简单
的特点,深受各大
Android
开发者的欢迎。
Github截图
如果还不了解RxJava,请看文章:
Android:这是一篇 清晰 & 易懂的Rxjava 入门教程
-
今天,carson今天将采用
图文的方式
解析
Rxjava
的基本原理,希望大家会喜欢。
示意图
目录
示意图
1. 定义
RxJava:a library for composing asynchronous and event-based programs using observable sequences for the Java VM
// 翻译:RxJava 是一个在 Java VM 上使用可观测的序列来组成异步的、基于事件的程序的库
-
总结:
RxJava
是一个
基于事件流、实现异步操作
的库
2. 作用
实现异步操作
类似于
Android
中的
AsyncTask
、
Handler
作用
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
的原理进行图文讲解
-
接下来,
我将持续推出
Android
中
Rxjava 2.0
的一系列文章,包括原理、操作符、应用场景、背压等等
示意图
请点赞!因为你的鼓励是我写作的最大动力!
相关文章阅读