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
Advanced State Management Patterns with React
Search
Francesco Strazzullo
October 03, 2019
Programming
0
120
Advanced State Management Patterns with React
Slides for ReactJs Day 2019 Workshop
Francesco Strazzullo
October 03, 2019
Tweet
Share
More Decks by Francesco Strazzullo
See All by Francesco Strazzullo
Strategic Testing Decisions - Build Stuff 2021
francescostrazzullo
0
75
Contract-Driven_Development.pdf
francescostrazzullo
0
570
Domain-Driven Frontend
francescostrazzullo
0
1.2k
Strategic Testing Decisions
francescostrazzullo
0
340
A DIY Guide To Building Your Own Rendering Engine - CityJS2021
francescostrazzullo
2
76
Technical Decision-making Anti-patterns - Avanscoperta Meetup 2021
francescostrazzullo
0
400
How to Choose Your Next Technology Stack
francescostrazzullo
0
890
The Definition of Framework
francescostrazzullo
1
860
How to Choose Your Next Technology Stack
francescostrazzullo
1
250
Other Decks in Programming
See All in Programming
CQRS+ES の力を使って効果を感じる / Feel the effects of using the power of CQRS+ES
seike460
PRO
0
140
useSyncExternalStoreを使いまくる
ssssota
6
1.1k
선언형 UI에서의 상태관리
l2hyunwoo
0
180
rails statsで大解剖 🔍 “B/43流” のRailsの育て方を歴史とともに振り返ります
shoheimitani
2
940
Webエンジニア主体のモバイルチームの 生産性を高く保つためにやったこと
igreenwood
0
340
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
3
300
命名をリントする
chiroruxx
1
420
range over funcの使い道と非同期N+1リゾルバーの夢 / about a range over func
mackee
0
110
103 Early Hints
sugi_0000
1
230
生成AIでGitHubソースコード取得して仕様書を作成
shukob
0
470
Recoilを剥がしている話
kirik
5
6.8k
KubeCon + CloudNativeCon NA 2024 Overviewat Kubernetes Meetup Tokyo #68 / amsy810_k8sjp68
masayaaoyama
0
260
Featured
See All Featured
Done Done
chrislema
181
16k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Building an army of robots
kneath
302
44k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
How to Ace a Technical Interview
jacobian
276
23k
How to Think Like a Performance Engineer
csswizardry
22
1.2k
Scaling GitHub
holman
458
140k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Building Adaptive Systems
keathley
38
2.3k
A Modern Web Designer's Workflow
chriscoyier
693
190k
A designer walks into a library…
pauljervisheath
204
24k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Transcript
Advanced State Management Patterns with React
Francesco Strazzullo (AKA Strazz) @TheStrazz86 (Follow me on Twitter!) Ego
Slide
WE DEVELOP DIGITAL PROJECT TOGETHER WITH YOU.
http://frameworklessmovement.org/
https://www.apress.com/it/book/9781484249666 Use “TheStrazz” discount code
Source Code for the Workshop https://github.com/ideatosrl/reactjs-advanced-state-management-workshop
Why are you here?
What is “State Management”?
“State management refers to the management of the state of
one or more user interface controls such as text fields, OK buttons, radio buttons, etc. in a graphical user interface.” Wikipedia
React State API
None
None
None
None
None
What’s Wrong with that?
What is the best State Management Pattern?
None
Bring out tradeoffs
Framework Compass Chart
Model View Controller
“Trygve Reenskaug introduced MVC into Smalltalk-79 while visiting the Xerox
Palo Alto Research Center (PARC) in the 1970s.” Wikipedia
None
None
Reactive Programming (or I learned the real meaning of reactive
programming…)
Reactive Manifesto
Responsive, Resilient, Elastic, Message Driven
None
“In computing, reactive programming is a programming paradigm oriented around
data flows and the propagation of change.” Wikipedia
None
RxJS
None
Let’s try with an example
const a = b + c;
=B1+C1
None
None
None
Is React Reactive?
None
MobX
“MobX is a battle tested library that makes state management
simple and scalable by transparently applying functional reactive programming” MobX Getting Started
MobX helps you observe your Model
None
None
None
Event Bus
None
None
None
Redux
“A Predictable State Container for JS Apps” redux.js.org
Redux Cheatsheet Event = Action Model = Reducers Event Bus
= Store
None
Thanks! Francesco Strazzullo
[email protected]