RxJava 2.0,我来了
来源:互联网 发布:易建联体测数据视频 编辑:程序博客网 时间:2024/06/07 11:42
先扯几句
作为响应式编程牛逼的开源库RxJava已经火了好久了,后被移植到很多平台比如RxAndroid,最近一段时间才对它做了一些了解,我相信好多新手的在接触这块内容的时候,都看过这篇文章:
给 Android 开发者的 RxJava 详解
没错,就是扔物线大神写一篇文章,这篇文章对整个RxJava的使用,原理都做了比较详细的阐述,不过文章是真的长啊!需要花费较长的时间阅读和理解!
然而,在我要用它的时候,发现ReactiveX 在10月29号发布了正式版RxJava 2.0.0,现在已经有了小版本的更新到2.0.1,我又懵逼了,里边改了好多东西,对于一个入门小白来说,简直就是黑人问号???
这篇文章就从2.x版本讲一下用法,不过还是强烈推荐阅读上面的文章(1.x版本),毕竟再怎么变,它的实现原理和思路都是不变的!
我的理解
看完上面的那篇文章,我们至少要对RxJava有一个认知,为什么它这么强大,简单的说,有以下三点:
①异步
这里主要就是两个比较核心的方法subscribeOn
和observeOn
这两个方法都传入一个Scheduler对象,subscribeOn
指定发射事件的线程,observeOn
指定消费事件的线程。
②强大的操作符
提供了一系列的转换操作符,如map()
,flatMap()
,filter()
,merge()
,concat()
,lift()
,compose()
等操作符可以将事件序列中的对象或整个序列进行加工处理,转换成不同的事件或事件序列,然后再发射出去!
③链式调用
链式调用最大的好处就是逻辑清晰,代码简洁!在应对较复杂的逻辑的时候,也能展现出清晰的思路!相反如果我们的代码在写一些复杂的逻辑的时候,各种嵌套,正如文章中戏称:迷之缩进,确实如此!
简介
RxJava2 是遵循 Reactive Streams Specification 的规范完成的,新的特性依赖其提供的4个基础接口。分别是 Publisher
,Subscriber
,Subscription
和Processor
。
另外一直强调出现一个词Backpressure(背压),又懵逼了!这个背压是什么鬼?!这里有官方文档对背压的解释:
Backpressure
英文好的童鞋可以看上面的官方的文档,当然这里也找到一篇译文:
RxJava 2.0中backpressure(背压)概念的理解
然后,我们说一下2.x版本和1.x的区别,同样的这里有官方的文档可以看:
What’s different in 2.0
我也找到了一篇译文,可以参考一下:
RxJava 2.0有什么不同(译)
好了,本篇博客先到这里了,介绍了一下比较核心的东西,还有2.x版本的一些相关内容和区别!毕竟也是小白一枚,在下篇博客再共同学习RxJava2.x的用法!
- RxJava 2.0,我来了
- RxJava 2.0来啦!
- RxJava 2.0来啦!
- 哈哈 我来来了
- 我来了!
- 我来了
- 呵呵...我来了
- 我来了!
- 呵呵,我来了。。。。
- 我来了,嘿嘿。。。。
- 我来了
- 我来了
- 我来了Blog
- CSDN我来了
- 我来了。
- mark,我来了...
- 上海!我来了!!
- ubuntu 我来了
- js本地存储localStorage
- wordcount 运行
- 由栈帧结构引出的一个小bug
- JAVA_多线程
- angular 界面跳转点击两次才展示
- RxJava 2.0,我来了
- JAVA_网络编程
- KVC 与 KVO 理解
- JAVA_反射
- OpenCV成长之路(8):直线、轮廓的提取与描述
- PAT 甲级:1105. Spiral Matrix
- scrapy-redis(二)
- Java 8新特性探究(十): StampedLock将是解决同步问题的新宠
- solr5.5.3 单机安装(一)