Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ReactiveProperty - MVVM & Async Extensions for Rx
Search
Yoshifumi Kawai
October 08, 2011
Technology
54
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ReactiveProperty - MVVM & Async Extensions for Rx
Yoshifumi Kawai
October 08, 2011
More Decks by Yoshifumi Kawai
See All by Yoshifumi Kawai
C#の現在地 進化の歴史と、AI時代の.NET Everywhere
neuecc
1
940
.NET for Android with Native AOT Built with Cursor
neuecc
0
6.5k
CysharpのOSS群から見るModern C#の現在地
neuecc
2
47k
R3のコードから見る実践LINQ実装最適化・コンカレントプログラミング実例
neuecc
5
57k
.NETの非同期戦略とUnityとの相互運用
neuecc
3
56k
他言語がメインの場合のRustの活用法 - csbindgenによるC# x Rust FFI実践事例
neuecc
7
42k
Modern High Performance C# 2023 Edition
neuecc
4
16k
CEDEC 2023 モダンハイパフォーマンスC# 2023 Edition
neuecc
9
120k
C#11 による世界最速バイナリシリアライザー「MemoryPack」の作り方
neuecc
1
42k
Other Decks in Technology
See All in Technology
白金鉱業Meetup Vol.25 アウトカムが二値のデータに対するCausal Impact
brainpadpr
0
220
現場で役立つ技術負債の効果的な返済方法
masuda220
PRO
8
4.3k
SREは、MCPとAutopilotをこう使え!
kazumax55
2
850
作品が生態系になった ─ Mini Tokyo 3D から世界へ
nagix
0
190
AgentCore Runtime上にAgentic Coding基盤を構築・展開する際の設計ポイントと限界点 / Design considerations and limitations when building an agentic coding platform on AgentCore Runtime
har1101
4
200
Reactの設計論
uhyo
24
13k
10分で知る最近のOmarchy
komagata
0
350
積み重なった技術負債への挑戦 〜初手としての全社ゴト化〜
techtekt
PRO
0
1.3k
AIによるクリエイティブ生成を行う上での試行錯誤
plaidtech
PRO
0
150
AIエージェントの自己改善をどう設計するか / How to Design Self-Improvement for AI Agents
22mi
25
16k
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
3
510
【技術的負債conf】事業成長に伴う技術的負債の説明責任とAIによるモニタリング、認知的負債について
i35_267
3
1.7k
Featured
See All Featured
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
910
So, you think you're a good person
axbom
PRO
2
2.2k
Chasing Engaging Ingredients in Design
codingconduct
0
310
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
450
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
420
エンジニアに許された特別な時間の終わり
watany
109
250k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
240
Six Lessons from altMBA
skipperchong
29
4.5k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.6k
For a Future-Friendly Web
brad_frost
183
10k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
590
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
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
ぜひ、試してください! まとめ