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
130
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
83
Contract-Driven_Development.pdf
francescostrazzullo
0
600
Domain-Driven Frontend
francescostrazzullo
0
1.9k
Strategic Testing Decisions
francescostrazzullo
0
350
A DIY Guide To Building Your Own Rendering Engine - CityJS2021
francescostrazzullo
2
92
Technical Decision-making Anti-patterns - Avanscoperta Meetup 2021
francescostrazzullo
0
420
How to Choose Your Next Technology Stack
francescostrazzullo
0
1.6k
The Definition of Framework
francescostrazzullo
1
1.6k
How to Choose Your Next Technology Stack
francescostrazzullo
1
260
Other Decks in Programming
See All in Programming
Design Foundational Data Engineering Observability
sucitw
3
210
@Environment(\.keyPath)那么好我不允许你们不知道! / atEnvironment keyPath is so good and you should know it!
lovee
0
130
go test -json そして testing.T.Attr / Kyoto.go #63
utgwkk
3
320
Ruby×iOSアプリ開発 ~共に歩んだエコシステムの物語~
temoki
0
350
Improving my own Ruby thereafter
sisshiki1969
1
160
さようなら Date。 ようこそTemporal! 3年間先行利用して得られた知見の共有
8beeeaaat
3
1.5k
ProxyによるWindow間RPC機構の構築
syumai
3
1.2k
Introducing ReActionView: A new ActionView-compatible ERB Engine @ Rails World 2025, Amsterdam
marcoroth
0
710
アセットのコンパイルについて
ojun9
0
130
MCPでVibe Working。そして、結局はContext Eng(略)/ Working with Vibe on MCP And Context Eng
rkaga
5
2.3k
Performance for Conversion! 分散トレーシングでボトルネックを 特定せよ
inetand
0
3.4k
テストカバレッジ100%を10年続けて得られた学びと品質
mottyzzz
2
610
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
173
14k
Producing Creativity
orderedlist
PRO
347
40k
The Power of CSS Pseudo Elements
geoffreycrofte
77
6k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
How to Think Like a Performance Engineer
csswizardry
26
1.9k
Gamification - CAS2011
davidbonilla
81
5.4k
Navigating Team Friction
lara
189
15k
Scaling GitHub
holman
463
140k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
Designing for Performance
lara
610
69k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
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]