2012-01-01から1ヶ月間の記事一覧
ここまで15回に渡ってRxについて見てきました。今回もTPLのとき同様、個人的に勉強したことの備忘録でしかありませんが、読まれた方々が少しでもRxについて興味を持ってくださったり、理解を深めるキッカケになっていれば幸いです。 ソフトウェアエンジニア…
今回で入門記事の連載も (一応名ばかりの) 最後です。今回はスケジューラの利用について見ていきます。残念ながら、これについてはだいぶ自信がありません。今わかっている範囲、そうだろうと思っている範囲で書きます。 スケジューラ スケジューラとは、処…
Push型配信の特徴は情報の分配 (同じデータを複数の購読者に送信すること) です。しかし、前回の内容の通り、ColdなObservableでは分配をすることができません。Rxの旨みを最大限に引き出すためには、ColdなObservableをHotなObservableに変換する必要があり…
IObservable<T>には、HotとColdと呼ばれる2つの性質があります。実はこれまで触れてきた記事のサンプルにもHotなものとColdなものが出てきていました。これらの性質の違いを把握することはRxを利用する上で非常に重要です。今回はこれらについて見ていきます。 </t>…
今回は、同期メソッドを非同期に実行し、それをIObservable<T>シーケンスとして受ける方法や、非同期処理として提供されているメソッドをIObservable<T>シーケンスに変換する方法ついて見ていきたいと思います。これが使えるようになれば、きっと非同期処理も怖く</t></t>…
Rx入門 (2) - オブザーバーパターンの最後にもチラッと書きましたが、イベントはオブザーバーパターンの一実装です。なので、イベントをIObservable<T>に乗せ、イベントに対応する処理を記述することができます。そこで今回は、イベントをIObservable<T>シーケンス</t></t>…
前回までで、IObservable<T>に対してLINQスタイルでの記述ができることを見てきました。これから3回ほどは、時間/イベント/非同期処理をIObservable<T>としてみなし、情報を通知する方法について触れていきます。 MouseMoveなどの各種イベント、一定間隔で発行され</t></t>…
前回はLINQの記述を用いて、流れてくるデータをフィルタリング (Where) したり、変換 (Select) したりしました。今回はこれらを自作することで、より理解を深めてみようと思います。 実装へのアプローチ IObservable<T>がIObserver<T>に情報を流すというのが、Rxで</t></t>…