Shoeisha Technology Media

CodeZine(コードジン)

記事種別から探す

RxJava 2.xを用いた簡単なサンプルプログラムの実装

RxJavaによるリアクティブプログラミング入門(4)

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2016/11/09 14:00

 この連載はRxJavaを使って、リアクティブプログラミングにおけるポイントやRxJavaが持つ機能について学んでいくことを目的としています。前回はReactive StreamsとRxJava 2.xのポイントについて簡単に見ましたが、今回はこのRxJava 2.xを使って実際に実装すると、どうなるのかについて見ていきます。

目次

 RxJava 1.xの回では"Hello, World!"と"こんにちは、世界!"を通知し、受け取った通知に対しての出力を行うサンプルを作りました。今回はこのサンプルと同じような処理をするものをRxJava 2.xを使って実装してみましょう。

対象読者

  • Java経験者(初心者可)
  • RxJava未経験者
  • リアクティブプログラミング未経験者

 ※ただし、前回までの連載を読んでいる前提です。

環境構築

 RxJava 2.xではRxJava 1.xとは違いReactive Streamsとの依存があるため、RxJava 2.xのjarだけでなく、Reactive Streamsのjarにもパスを通すことで初めてRxJava 2.xを使えるようになります。そのため、MavenやGradleを使ってRxJava 2.xとReactive Streamsとの間の依存関係を自動で解決させるようにしたほうがよいでしょう。

 Mavenを使って環境を構築する場合、pom.xmlに次のdependencyを追加して取得することでRxJava 2.xが使える環境を構築できます。今回は執筆時点での最新版である2.0.0を使います。

Mavenの場合
<dependency>
    <groupId>io.reactivex.rxjava2</groupId>
    <artifactId>rxjava</artifactId>
    <version>2.0.0</version>
</dependency>

 同様にGradleからも追加が可能です。dependenciesに下記を追加してください。

Gradleの場合
dependencies {
    …… 略
    compile 'io.reactivex.rxjava2:rxjava:2.0.0'
}

 MavenやGradleを使うと、Reactive Streamsの記述を行わなくても自動的にRxJava 2.xが依存しているReactive Streamsのjarをダウンロードしてくれます。こうすることで、新しいバージョンに変更する際に依存するライブラリのバージョンの対応を意識しなくてよくなります。

 しかし、これらのツールを使わずに環境を構築したい場合、Mavenの検索サイトから直接jarを取得することも可能です。

 その場合、Mavenの検索サイトから、

g:"io.reactivex.rxjava2" AND a:"rxjava"

と入力し検索すると、RxJava 2.xの最新のjarがダウンロードできるようになります。

Mavenの検索画面(RxJava 2.x)
Mavenの検索画面(RxJava 2.x)

 ただし、この場合はReactiveStreamsのjarが含まれていないので自分でダウンロードする必要があります。そのため、Mavenの検索サイトから、

g:"org.reactivestreams" AND a:"reactive-streams"

で検索し、Reactive Streamsの対象のバージョンのjarをダウンロードしないといけません。

Mavenの検索画面(Reactive Streams)

Mavenの検索画面(Reactive Streams)

 現段階ではReactive Streamsのバージョンは1.0.0なのですが、今後それぞれがバージョンアップした際は対応するバージョンを意識しないといけないので、各jarを個別に取得して設定する場合は注意してください。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • 須田 智之(スダ トモユキ)

    十数年間おもにSI企業にシステムエンジニアとして携わり、現在はフリーランスに。企業向けのシステム開発のかたわら個人でのモバイルアプリの開発やIT分野の記事も執筆。RxJava 2.0に対応した著書『RxJavaリアクティブプログラミング』が2017年2月16日より発売中。

バックナンバー

連載:RxJavaによるリアクティブプログラミング入門
All contents copyright © 2005-2017 Shoeisha Co., Ltd. All rights reserved. ver.1.5