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
RxJS Introduction
Search
r31gN_
July 25, 2016
Technology
0
46
RxJS Introduction
r31gN_
July 25, 2016
Tweet
Share
More Decks by r31gN_
See All by r31gN_
State management in React using Context and Hooks APIs
r31gn
0
230
React internals (fibers, coroutines, algebraic effects)
r31gn
1
400
10 things you need to know about React 16
r31gn
0
400
Breaking React apart Fiber by Fiber
r31gn
0
260
Progressive Web Apps - The Future
r31gn
2
250
The Magic Behind HTTP/2
r31gn
0
150
Client Side Reactive Programming Using RxJS
r31gn
0
180
CSS Architecture
r31gn
1
110
Embrace Native JavaScript
r31gn
0
90
Other Decks in Technology
See All in Technology
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
160
Amplify Gen2 Deep Dive / バックエンドの型をいかにしてフロントエンドへ伝えるか #TSKaigi #TSKaigiKansai #AWSAmplifyJP
tacck
PRO
0
400
Chasing the White Whale of Open Source - ROI
mrbobbytables
0
110
あなたの知らない Function.prototype.toString() の世界
mizdra
PRO
2
460
プロダクト活用度で見えた真実 ホリゾンタルSaaSでの顧客解像度の高め方
tadaken3
0
220
インフラとバックエンドとフロントエンドをくまなく調べて遅いアプリを早くした件
tubone24
1
440
Flutterによる 効率的なAndroid・iOS・Webアプリケーション開発の事例
recruitengineers
PRO
0
120
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
780
"とにかくやってみる"で始めるAWS Security Hub
maimyyym
2
100
アプリエンジニアのためのGraphQL入門.pdf
spycwolf
0
110
[CV勉強会@関東 ECCV2024 読み会] オンラインマッピング x トラッキング MapTracker: Tracking with Strided Memory Fusion for Consistent Vector HD Mapping (Chen+, ECCV24)
abemii
0
230
DynamoDB でスロットリングが発生したとき/when_throttling_occurs_in_dynamodb_short
emiki
0
270
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Site-Speed That Sticks
csswizardry
0
34
What's in a price? How to price your products and services
michaelherold
243
12k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Facilitating Awesome Meetings
lara
50
6.1k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Done Done
chrislema
181
16k
Practical Orchestrator
shlominoach
186
10k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
47
2.1k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
130
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.3k
Embracing the Ebb and Flow
colly
84
4.5k
Transcript
RxJS introduction
Current state of UIs • Extremely complex • Full of
async events, client/server communication • UIs are always composed based on a state • State is hard to reason about
Imperative programming
None
User action UI Responds User action ….. Uses imperative programming
Uses imperative programming UI Responds time (s)
Caveats of IP • Isolates state from time • You
don’t see the bigger picture • Mutable values
Is there a way … ?
Reactive programming
– Andre Staltz “Reactive programming is programming with asynchronous data
streams.”
Streams • Sequence of ongoing events ordered in time •
Cheap, ubiquitous • Allow you to react to new data • Think event busses, typical click events, etc.
But in RP …
None
Observable/Observer • Observables are push-based, observable sequences that can send
data to anyone who is interested • Observers are entities who register an interest through a subscription to an Observable
Observers • Register via subscribe method • You get back
a Disposable object (a handler for the subscription) • onNext, onError, onCompleted
Demo time with RxJS
When to use RxJS • Orchestrate event-based computations • Deal
with async data • Complex UIs with lots of user interaction
Thank you! @r31gN_ https://github.com/r31gN/rxjs-demo-workshop