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.3k
Strategic Testing Decisions
francescostrazzullo
0
340
A DIY Guide To Building Your Own Rendering Engine - CityJS2021
francescostrazzullo
2
79
Technical Decision-making Anti-patterns - Avanscoperta Meetup 2021
francescostrazzullo
0
400
How to Choose Your Next Technology Stack
francescostrazzullo
0
940
The Definition of Framework
francescostrazzullo
1
920
How to Choose Your Next Technology Stack
francescostrazzullo
1
250
Other Decks in Programming
See All in Programming
CNCF Project の作者が考えている OSS の運営
utam0k
5
690
[Fin-JAWS 第38回 ~re:Invent 2024 金融re:Cap~]FaultInjectionServiceアップデート@pre:Invent2024
shintaro_fukatsu
0
400
GAEログのコスト削減
mot_techtalk
0
110
Unity Android XR入門
sakutama_11
0
140
『GO』アプリ データ基盤のログ収集システムコスト削減
mot_techtalk
0
110
AWSマネコンに複数のアカウントで入れるようになりました
yuhta28
2
160
Formの複雑さに立ち向かう
bmthd
1
720
Linux && Docker 研修/Linux && Docker training
forrep
23
4.5k
Introduction to kotlinx.rpc
arawn
0
630
テストをしないQAエンジニアは何をしているか?
nealle
0
130
Writing documentation can be fun with plugin system
okuramasafumi
0
120
CloudNativePGがCNCF Sandboxプロジェクトになったぞ! 〜CloudNativePGの仕組みの紹介〜
nnaka2992
0
220
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.2k
Scaling GitHub
holman
459
140k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
31
2.1k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.5k
Side Projects
sachag
452
42k
Designing Experiences People Love
moore
139
23k
The Cult of Friendly URLs
andyhume
78
6.2k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Thoughts on Productivity
jonyablonski
69
4.5k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
29
4.6k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
51k
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]