LoginSignup
36
37

More than 5 years have passed since last update.

リアクティブプログラミングの学習にはReactive Koans がとてもよい件

Last updated at Posted at 2015-02-27

巷ではRxホゲやらRFPやらといった言葉を目にすることが多くなりました。

詳しいことはわからんが、どうやらイベントドリブンのコードを気持ちよく書きたい!という時にぴったりということまでわかったところで、どうやって覚えようかなー。。。とWebをさまよっていたところRx で Koan したにたどり着きました。

なるほどとっても覚えやすい!というのでこちらでも紹介します。

Reactive Koans ってこんな感じ

虫食いになってるコードのセットを落としてきて、穴埋めしながらReactive Extensionsの仕組みや使い方を順番に覚えられるようになっています。

例えばこんな感じ

[TestMethod]
public void ExplainSomething()
{
  var ___ = "Please fill in the blank.";
  var aNumber = 10;
  var anotherNumber = 5;
  Assert.AreEqual(___, aNumber + anotherNumber);   // ____ のところを修正する
}

一問ごとにテストケースになっていて、最初何もせずに走らせるとテストがコケてメッセージに"空白を埋めろ!"と出てきます。
言われたとおり虫食い(___)を直して再実行、見事テストをパス!という感じで進めていきます。

結構細かく問題が分かれていて、一歩ずつ進めていけるような構成になっているので無理なく進められます。
何より手とコードを動かしながら進められるというのがとてもいいです。

やり方

Reactive KoansはVisual Studioのプロジェクト形式で以下のサイトからDLできます。導入方法や実行方法も記載されています。
http://rxkoans.codeplex.com/

導入といってもVSから落としたプロジェクトを開いて、テスト実行って押すだけなんですけどね。Visual Studioもコミュニティエディションなら無料なのでレッツトライ。

Reactive KoansはC#でできてます。
RxホゲはJavaとかJSとかも似たような仕組みになっている(らしい)ので、最終的にC#以外でリアクティブするにしても、基礎を覚えるにはやってみて損はないんじゃないかなーと、個人的に思っています。
(私もRxJavaを使おうと思っています)

Koansとは? = 書きながら進めるチュートリアル

KoansというのはいわゆるZen Wordsの一つで、語源は悟りをひらくための課題のようなものだそうです。
(参考:http://ja.wikipedia.org/wiki/%E5%85%AC%E6%A1%88)

Code Koansと調べるといくつかほかにもあるようです。RxJSとか。
Qiitaにも紹介されているものもありますね
http://qiita.com/esehara@github/items/4183f1dcee9a82ac2c6b

参考
Rx で Koan した

それでは
Enjoy Reactive Life!

36
37
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
36
37