Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Introduction to Reactive Extensions
Search
Ana Betts
March 10, 2012
Programming
700
3
Share
Introduction to Reactive Extensions
This is a talk I first gave at Nebraska Code Camp on March 10th, 2012
Ana Betts
March 10, 2012
More Decks by Ana Betts
See All by Ana Betts
Flutter in Practice
anaisbetts
2
160
Electron Pro-Tips
anaisbetts
0
210
Electron: The Boring Parts
anaisbetts
1
420
Why Akavache is Fast: How not to use sqlite3
anaisbetts
0
200
Native Modules in Electron
anaisbetts
3
8.4k
Single Page Apps in Electron
anaisbetts
3
1.5k
Functional Reactive Programming in Practice
anaisbetts
2
340
Awaiting for Rx
anaisbetts
4
600
On Programming
anaisbetts
3
390
Other Decks in Programming
See All in Programming
Don't Prompt Harder, Structure Better
kitasuke
0
800
2026-04-15 Spring IO - I Can See Clearly Now
jonatan_ivanov
1
160
決定論 vs 確率論:Gemini 3 FlashとTF-IDFを組み合わせた「法規判定エンジン」の構築
shukob
0
150
ソフトウェア設計の結合バランス #phperkaigi
kajitack
0
170
HTML-Aware ERB: The Path to Reactive Rendering @ RubyKaigi 2026, Hakodate, Japan
marcoroth
0
600
ふりがな Deep Dive try! Swift Tokyo 2026
watura
0
270
🦞OpenClaw works with AWS
licux
1
320
Claude CodeでETLジョブ実行テストを自動化してみた
yoshikikasama
0
1.1k
「Linuxサーバー構築標準教科書」を読んでみた #ツナギメオフライン.7
akase244
0
1.4k
実用!Hono RPC2026
yodaka
2
290
Running Swift without an OS
kishikawakatsumi
0
870
書籍「ユーザーストーリーマッピング」が私のバイブル
asumikam
4
460
Featured
See All Featured
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.2k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.6k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
390
Leo the Paperboy
mayatellez
7
1.7k
Building Applications with DynamoDB
mza
96
7k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
190
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
540
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
140
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
190
Technical Leadership for Architectural Decision Making
baasie
3
350
Transcript
demo
REACTIVE EXTENSIONS
github @xpaulbettsx
We can no longer write synchronous software. - Abraham Lincoln
let’s talk linq.
the core of linq is the sequence.
pipelines new[] { 1, 2, 3, 4, 5 } .Select(x
=> x * 5) .Where(x => x % 2 == 0) .ForEach(Console.WriteLine)
a sequence is just some stuff, in a particular order
linq lets us describe what to do with data when
we get it... ...without actually having the data
what i’ve described is a monad.
I thought this was an Rx talk!
let’s talk events.
Events Aren’t Com pos able
OnMouseUp + OnMouseDown != OnDoubleClick
what is an event? OnKeyUp += (o,e) => DisplayASlide();
H
e
l
l
o
(!)
an event is just some stuff, in a particular order
Observables OnNext OnCompleted OnError ‘h’, ‘i’ no more stuff exception!
IObservable<T> IDisposable Subscribe(IObserver<T> observer); observable.Subscribe( x => WriteLine(x), () =>
WriteLine(“Done!”), ex => WriteLine(“Aieeeee!”));
IObservable is a list too
subscribe is your foreach
Cold <> Hot
Subject<T>
demo
Rx thinks about time
IObservable represents one of two things a stream of items
a future result
Rx Async Methods are methods that return IObservable<T>
IObservable<string> ReturnHelloWorld() { return Observable.Return(“Hello World”); } IObservable<string> ReturnHelloWorld() {
return Observable.Start(() => { return “Hello World”; }, Scheduler.TaskPoolScheduler); }
demo
learn more Rx Workshop Videos amzn.to/programming-rx