(一)关于RxJava:概述

    最近工作需要,花了点时间去看了RxJava,同道中人对它说的是人云亦云,有说easy,有说复杂,但自己实践起来,还是有各种问题,这中间也请教了一些牛人,其中包括我的leader,在这里将记录一下我在这条学习路上的点滴。行,话不多说,来看正文:

一:概念

=>RxJava的理解

      RxJava是ReactiveX在java上的开源实现,一个实现异步操作的库

=>RxJava的优势

       简洁性 ; 让异步代码更加简洁 ; 即使程序逻辑复杂,它依然保持简洁性

二:核心

       Observable : 被观察者,事件源

       Subscriber:观察者

在RxJava中,一个Observable是一个发出数据流或事件的类,Subscriber是一个对这些发出的items进行处理的类,一个observable发出一个或多个item,然后可能成功或出错,一个observable有多个Subscriber,并且通过observable发出的每一个item,该item将被subscriber.onNext( )处理,一个observable不再发出items,它将会调用Subscriber的onCompleted( ),出错将调用Subscriber.onError( )。

注:类似于模式中的观察者模式,但有一点不同,即一个observable没有任何的Subscriber,那这个observable是不会发出任何事件的。

三:工具

Android开发中,强烈推荐使用 retrolambda这个gradle插件,JDK版本必须使用jdk8或以上,这样你就可以在你的代码中使用lambda了

      关于retrolambda这个插件的配置安装(个人实验成功)

     3.1引入retrolambda插件

       在app的build.gradle中添加 

apply plugin: ‘me.tatarka.retrolambda‘

    3.2 设置编译选项

       在app的build.gradle的android节点中添加如下

compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

   3.3 引用retrolambda的类路径,在项目的build.gradle的buildscript->dependencies节点中添加如下代码

classpath 'me.tatarka:gradle-retrolambda:3.2.0'

    3.4 菜单 Build--->Rebuild project ,联网自动下载retrolambda包,成功后,测试代码OK

 

   (来自于:http://www.bubuko.com/infodetail-983988.html )













你可能感兴趣的:((一)关于RxJava:概述)