.NETリアクティブフレームワークの良い紹介[閉じた
-
22-09-2019 - |
質問
Microsoftのドキュメントは別として、Microsoft Reactive(RX)フレームワークの優れた紹介とチュートリアルはありますか?
また、リアクティブが従来の非同期コーディング技術を使用して解決するのが難しいプログラミングの問題を簡単にする良い例(コードを使用して)は何ですか?
解決 2
これは、.NET RXフレームワークのさまざまな機能を使用する方法を示す多くのコード例を備えたWikiサイトです。 http://rxwiki.wikidot.com/101Samples
これは最も包括的なサイトであり、最初に迅速なサイトであることがわかりました。
他のヒント
アップデート: :以下のブログの投稿は私のオンラインブックに取って代わられました www.introtorx.com. 。これは、無料で利用できる包括的な19章の本です。 Webで閲覧するか、Kindle用にMobiバージョンをダウンロードできます。また、Amazonからわずかな料金(〜99c / 77p)で直接入手することもできます。本があなたのニーズや期待を満たしていない場合は、私(著者)に知らせてください、そして私たちはV2に対してより良いことをします。
ホット/コールドポストへのリンクをありがとう。これはその一部にすぎません フルシリーズ,
- RXの紹介
- 静的および拡張メソッド
- 生涯管理 - 完了と登録解除
- フロー制御
- 複数のiobservableストリームを組み合わせます
- スケジューリングとスレッド
- ホットおよびコールドオブザーバブル
- Rxのテスト
- バッファ、ウィンドウ、結合、グループ結合
このブログは、より多くのRX入門的なもので更新し続けます。
あなたが行きたいより高度なもののために RXフォーラム (MSDN)。
のMSDNサイト rx-framework
より深く行く開発者のために ソースコード
RXに関するクールなオーストリアの基調講演
これは私が見た中で最高です: Devcamp 2010 Keynote -RX:非同期プログラミングブルースの治療
チャンネル9の興味深いビデオ
キム・ハミルトンとウェス・ダイアー:内部.NET RXおよびIOBSERVABLE/IOBSERVER in the BCL(vs 2010)
RXの作成者とのインタビュー: 専門家への専門家:ブライアン・ベックマンとエリック・メイジャー - .NETリアクティブフレームワーク(RX)内
RXの作成者からの紹介
- E2E:Erik MeijerとWes Dyer-フードの下の2つの反応フレームワーク(RX)
- E2E:Erik MeijerとWes Dyer-フード2 of 2の下のリアクティブフレームワーク(RX)
CodeProject 論文
別のコース リンク付きの最初のブログ (新着)
これは、リアクティブプログラミングで簡単にできることの例ですが、古典的なイベントで乱雑(挑戦的ではないにしても)で、マウスボタンがダウンしている間に線を描きます。読みやすく、明示的な状態処理はありません。
var pen = new Pen(Color.Red, 3);
var graphics = this.CreateGraphics();
var mouseMoveWhileDown =
from md in this.GetMouseDown()
from mv in this.GetMouseMove().Until(this.GetMouseUp())
select new Point(mv.X, mv.Y);
mouseMoveWhileDown
.Pairwise()
.Subscribe(tup => graphics.DrawLine(pen, tup.Item1, tup.Item2));
(その例では、pairwise()が自家製であることを告白しなければなりません...)
iObservableの最も重要なことは、IENumerableのように「合成可能」であることです。
別の答えで言及されたビデオをお勧めします。実際、Channel9の主題に関するいくつかの異なるビデオがあります。
あなたが以下を含むいくつかの基本的なことを経験したら ハンドソンラブ必ずチェックアウトしてください Lee Campbellのホットで冷たいオブザーバブル それは私のためにrxから不可解な謎を取り除いた:)
この一連の記事(4つあります)が、リアクティブなlinqが役立つことについてです。リアクティブプログラミング(ii。) - リアクティブなlinqの導入.
彼はそれを使用してゲームを書く例を持っているので、それはあなたが探しているものであることを願っています。
私も見つけました リアクティブフレームワークの紹介パートI の上 CodeBetter.com
. 。同じサイトに最初の部分の続編があります。
これがあなたに役立つことを願っています。
奇妙なことに、反応性拡張機能 ホームページ 12個のビデオやブログへのリンクですが、包括的な公式参照文書にリンクすることを忘れています。それは泣いている恥です、あなたがチームを知っているなら、彼らに彼らのウェブサイトを修正するように頼んでください!
と遊ぶ RXサンドボックス 異なる組み合わせが何を意味するかについて非常に直感的な見方をするため。これは私が見た中で最高の学習ツールです。
これらの記事を調べ、特に関連するソースコードをダウンロードして再生します。
- パートI- System.Reactiveまたは.NET Reactive Extensions(RX) - 概念と最初の外観
- パートII- イベントへのlinq -.NETリアクティブエクステンション(RX)の詳細
- パートIII- イベントへのlinq -geteventName()T4テキストテンプレートを使用したラッパーメソッドの生成
これを信頼することが役立ちます
2番目の質問に答えるために、RXから多くの利益を得ることができる問題があります。 「リッチクイックを入手」と呼ばれています。
あなたは同じ名前でゲームを開発しました、そしてそれはかなりよく売れています。しかし、それはあなたの店でのみ卸売のために利用可能です。現金処理を容易にするために、あなたに向かって流れるコンベアベルトがあります。
(上記のストーリーをお気軽に変更してください:))
営業担当者は、WADの請求書の量と種類を示すラベルなしで、それに拘束された現金のワッドを配置します。あなたの仕事は、お金を整理して数えることです。後で、あなたがより多くのお金を得るとき、あなたはあなたを助けるために他の人を雇うことができます。
この場合、ソースは現金のワッドの非同期源です(生産者)。従業員とサプライヤーはお金を期待していますが、WADを消費し、それらを解き放ち、カスタムビジネスロジックを使用して、適切に再パッケージして支払う必要があります。
営業担当者は自分のスレッドで走っているので、ベルトに投げたものを数えるのを待つ必要はありません。あなたの時間は、より多くのお金を数えることができるときに言われた場合に最適です。それまで、他の仕事をすることができます。
各ワッドをバイト[]で表すことができます。
これはかなり一般的な現実世界の状況です。周辺機器のネットワークまたはデータで[検索エンジン、画像、またはビデオのWebページ]を取得すると、バイトのチャンク(おそらくヘッダー付き)で取得します。単一のスレッド、または作業が難しすぎるマルチスレッド環境では、それらを集約して処理する傾向があります。もう違います!!
Jesse Libertyには、2011年10月に公開された本があります。
Amazon.com:リアクティブな拡張機能とLINQのプログラミング
そして、Channel9にrxworkshopビデオがあります:
「Microsoftドキュメントを除く」句は、チャンネル9のビデオに拡張されていますか?
リアクティブフレームワークの作成者からErik Meijer: - 専門家への専門家:ブライアン・ベックマンとエリック・メイジャー - .NETリアクティブフレームワーク(RX)内
真新しい: .NETのRX拡張機能を開始します
Andreas Hoffmannのリンクに加えて(RXを学んでいたときに非常に役立つことがわかりました)
Bart de Smet(非常に賢い人が本当によく説明している)のビデオを紹介します。
Rxの走りをちょっと走らせる:
RX-非同期プログラミングブルースの治療
いくつかのGory Insides +いくつかの哲学、これらのビデオは本当に啓発的です:
MIN LINQ -Linqの本質
(上記のビデオでは、linqがRXのような他のものとどのように関係しているかを扱っています)
Devhol202 - .NET用の反応性エクステンションで非同期ブルースを硬化させる (PDF、2 MB)は、これまでに見た中で最高のラボ/チュートリアルです。ライブラリの基本を案内して、学んだことを構築して設計できるようにします。
JavaScriptバージョンもあります。 Googleを検索してください。
好きだった RXパート1の紹介 - キータイプ, 、そしてそれは重要な機能を示しました。