$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ReactiveProperty - MVVM & Async Extensions for Rx
Search
Yoshifumi Kawai
October 08, 2011
Technology
0
40
ReactiveProperty - MVVM & Async Extensions for Rx
Yoshifumi Kawai
October 08, 2011
Tweet
Share
More Decks by Yoshifumi Kawai
See All by Yoshifumi Kawai
CysharpのOSS群から見るModern C#の現在地
neuecc
2
32k
R3のコードから見る実践LINQ実装最適化・コンカレントプログラミング実例
neuecc
5
47k
.NETの非同期戦略とUnityとの相互運用
neuecc
3
47k
他言語がメインの場合のRustの活用法 - csbindgenによるC# x Rust FFI実践事例
neuecc
7
41k
Modern High Performance C# 2023 Edition
neuecc
4
16k
CEDEC 2023 モダンハイパフォーマンスC# 2023 Edition
neuecc
9
110k
C#11 による世界最速バイナリシリアライザー「MemoryPack」の作り方
neuecc
1
41k
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
neuecc
1
450
Deep Dive async/await in Unity with UniTask(UniRx.Async)
neuecc
0
470
Other Decks in Technology
See All in Technology
Snowflakeで実践する、生成AIを活用した「自然言語によるデータとの対話」
nayuts
0
130
New Relic 1 年生の振り返りと Cloud Cost Intelligence について #NRUG
play_inc
0
120
普段使ってるClaude Skillsの紹介(by Notebooklm)
zerebom
3
1.2k
「図面」から「法則」へ 〜メタ視点で読み解く現代のソフトウェアアーキテクチャ〜
scova0731
0
430
Database イノベーショントークを振り返る/reinvent-2025-database-innovation-talk-recap
emiki
0
250
Fashion×AI「似合う」を届けるためのWEARのAI戦略
zozotech
PRO
2
1k
100以上の新規コネクタ提供を可能にしたアーキテクチャ
ooyukioo
0
190
AgentCoreとStrandsで社内d払いナレッジボットを作った話
motojimayu
1
360
Power of Kiro : あなたの㌔はパワステ搭載ですか?
r3_yamauchi
PRO
0
200
Amazon Bedrock Knowledge Bases × メタデータ活用で実現する検証可能な RAG 設計
tomoaki25
6
1.7k
S3を正しく理解するための内部構造の読解
nrinetcom
PRO
3
220
2025-12-18_AI駆動開発推進プロジェクト運営について / AIDD-Promotion project management
yayoi_dd
0
140
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
95
14k
Crafting Experiences
bethany
0
19
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
0
240
Facilitating Awesome Meetings
lara
57
6.7k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.3k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1k
ラッコキーワード サービス紹介資料
rakko
0
1.7M
So, you think you're a good person
axbom
PRO
0
1.8k
Designing for Timeless Needs
cassininazir
0
87
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Transcript
ReactiveProperty MVVM & Async Extensions for Rx @neuecc - 2011/10/08
Twitter : @neuecc HN : neuecc ("のいえ"と読ませています)
Microsoft MVP for C# LINQ Blog : http://neue.cc/ ⚫ LINQとかReactive Extensions(Rx)のことがメイン CodePlexに色々ライブラリ公開しています ⚫ LINQ to ObjectsのJavaScript実装 : linq.js ⚫ 単体テスト用拡張メソッド : Chaining Assertion ⚫ 生SQL文ベースのDB用ヘルパー : DbExecutor Profile
Reactive Extensions
Microsoftが開発している データアクセステクノロジ WP7には標準搭載、それ以外は追加インストー ル。.NET4.5には標準で載るかも載らないかも LINQ to Asynchronous LINQ to Events
イベントと非同期が LINQで書けるようになる
詳しくはWEBで。 某@ITで近日中に連載予定
ReactiveProperty
XAMLをUI作成に使うシーンの広がり ⚫ WPF ⚫ Silverlight ⚫ Windows Phone 7
⚫ WinRT(Windows 8) WPFが死ぬとかSilverlightは終了とかどうでもいい ⚫ XAMLをUI作成に使うアプリという枠で考える XAMLアプリケーション
XAMLアプリケーションはイベントの塊 ⚫ マウス・ジェスチャー・センサーはイベント ⚫ 通知(INotifyPropertyChanged)はイベント ⚫ それ経由によりデータバインドも同様にイベント XAMLアプリケーションは非同期の塊
⚫ WPFは除く、但しWinRTは非同期中心なのでデスク トップアプリケーションも非同期へ向かうトレンド イベント・非同期 => Reactive Extensions ⚫ これら二つはRxと非常に相性が良い RxとXAMLアプリケーション
RxをUIと繋げやすくするためのライブラリ ⚫ RxそのままではXAMLとは繋がりにくい ⚫ 特に、MVVMとして、Viewが完全に分離されている 状態では不可能に近く、Rxの力をUIをコントロール することに活かしにくかった ReactivePropertyの中身
⚫ UIとRxを接続するためのクラス群 ⚫ 非同期をより簡単にするための拡張メソッド群 ReactivePropertyとは
Demo
言語が思考を規定する (サピア=ウォーフの仮説)
表現力を広げるものである 同時に、表現力を縛るものでもある ⚫ 悪い意味ではなく、縛る「ため」もある フレームワーク/パターンも思考を規定する 常に進化を模索しよう
⚫ 不変の正しさなんて存在しない ⚫ 時代が、対象が、前提が変わる、その中で変わらないも のなんてあるわけがない ⚫ あるとしたら、抽象すぎて役にたたないもの ⚫ 例えばObjectクラス(全ての共通)とかね ⚫ 大事なのだけど、そのままでは何も使えない フレームワーク/パターンは?
Reactive Extensionsは異質でしょう ⚫ LINQも登場時は異質のものとして扱われましたね それをフルに活用するReactivePropertyも相当異質 だからこそ、そこに次の解があるのでは? ⚫
ないかもしれませんがそんなものは知りません:) 新しいパラダイムを楽しもう! ⚫ F is for Fun! – F# All or Nothingではない ⚫ 共存し融合したとき、次の世代へ進むのでは 新しいパラダイムへ
ダウンロード・サンプルはCodeplexにあります ⚫ http://reactiveproperty.codeplex.com/ ⚫ NuGetでインストールすることも可能 日本語での紹介・説明の記事はこちらに ⚫ http://neue.cc/2011/10/07_346.html
ぜひ、試してください! まとめ