hydrakecat’s blog

Walking like a cat

RxJava のテスト(2): RxJavaHooks, RxAndroidPlugins

これはRxJava Advent Calendar 2016の第14日目の記事です。前回はTestSubscriberやTestSchedulerを使ってRxJavaに関わる単体テストのしかたを説明しました。

f:id:hydrakecat:20161211234713p:plain

この記事では、それらでは足りない場合の奥の手、スケジューラを差し替える方法について説明します。

続きを読む

RxJava のテスト(1): TestSubscriber, test(), TestScheduler

これはRxJava Advent Calendar 2016の第12日目の記事です。

f:id:hydrakecat:20161211234713p:plain

RxJavaは非同期処理を扱うライブラリですが、それ故にRxJavaのからむ単体テストは一筋縄でいかないところがあります。この記事と次の記事では、RxJavaでの非同期処理テスト特有の問題と、その解決方法を説明します。なお、基本的に RxJava 1.x を対象としていますが、必要に応じて RxJava 2.x についても触れます。

この記事の続編はこちらになります。

続きを読む

RxJava は Subscriber を中心に捉えると理解しやすいんじゃないかという話

これは RxJava Advent Calendar 2015 の第22日目の記事です。昨日は kazy さんによる RxJava 2.xについて でした。

この記事では、 RxJava を理解するために自分が RxJava をどのように捉えているか、という話をします。なお、自分は ReactiveX や Reactive Functional Programming について詳しいわけではないので、その方面の理解の助けになるものではありません。どちらかといえば、RxJava という特定のライブラリをこう理解しておけば全体の挙動を把握しやすいのではないか、という生活の知恵のようなものになります。RxJS や他のライブラリではまた異なる実装かもしれませんのでご留意ください。

RxJava は非常に強力でよく考えられたものですが、ソースを見て挙動が直感的に分かるとは言えないライブラリです。本稿が自分のような初学者の理解の助けになれば幸いです。

続きを読む

Kotlin Inline Functions

これはKotlin Advent Calendar 2015の第8日目の記事です。昨日は n_yunoue さんによることりん、ビッグウェーブに乗るでした。

今日は inline functions の話を書きたいと思います。本題に入る前に function literal と function expression の違いについて説明して、その後に inline modifier やそれにまつわる Kotlin の機能(non-local return、reified modifier や crossline modifier)について説明します。

続きを読む

Fragmented Ep. 21: Diving Deep with Dagger

恒例の Fragmented レビュー。今回は第21回の Diving Deep with Dagger について。久しぶりに Donn と Kaushik の2人だけの回だが、カメオ出演(というのか?)で Square の Jesse Wilson が出ている。

続きを読む

Fragmented Ep. 20: Kotlin Taliking with Hadi Hariri

4 月にこのブログを始めて、はや半年。予想通り、三日坊主になってしまった。

これではいけない、というので、ものは試しに今回から Fragmented というポッドキャストの各エピソードの感想を書いていこうと思う。そうすれば、定期的にポストできるし、Fragmented も真面目に消化するだろう、という下心もある。

続きを読む

Droidcon Montreal まとめ

f:id:hydrakecat:20150524221626j:plain

すでに一ヶ月半以上も経って、いまさら感満載だけれど、先月行ってきた Droidcon Montreal についてまとめておく。

手短に、技術的に気になった発表を中心に紹介したいと思う。

続きを読む