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
73
Contract-Driven_Development.pdf
francescostrazzullo
0
560
Domain-Driven Frontend
francescostrazzullo
0
1.1k
Strategic Testing Decisions
francescostrazzullo
0
330
A DIY Guide To Building Your Own Rendering Engine - CityJS2021
francescostrazzullo
2
76
Technical Decision-making Anti-patterns - Avanscoperta Meetup 2021
francescostrazzullo
0
390
How to Choose Your Next Technology Stack
francescostrazzullo
0
800
The Definition of Framework
francescostrazzullo
1
780
How to Choose Your Next Technology Stack
francescostrazzullo
1
240
Other Decks in Programming
See All in Programming
Kotlin 2.0 and Beyond
antonarhipov
2
150
ECMAScript、Web標準の型はどう管理されているか / How ECMAScript and Web standards types are maintained
petamoriken
3
390
実践 Advanced CallKit 〜快適な通話の実現に向けて〜
mot_techtalk
3
140
LangGraphでのHuman-in-the-Loopの実装
os1ma
3
1.1k
What is Parser
yui_knk
9
4.1k
Using Livebook to build and deploy internal tools @ ElixirConf 2024
hugobarauna
0
250
[DroidKaigi 2024] Android ViewからJetpack Composeへ 〜Jetpack Compose移行のすゝめ〜 / From Android View to Jetpack Compose: A Guide to Migration
syarihu
1
550
Patched fetch did not work
quramy
3
160
Kotlin 2.0が与えるAndroid開発の進化
masayukisuda
1
370
The Sequel to a Dream of Ruby Parser's Grammar
ydah
1
220
私のEbitengineの第一歩
qt_luigi
0
450
エラーレスポンス設計から考える、0→1開発におけるGraphQLへの向き合い方
bicstone
5
1.5k
Featured
See All Featured
Building a Modern Day E-commerce SEO Strategy
aleyda
36
6.8k
RailsConf 2023
tenderlove
28
810
Building Applications with DynamoDB
mza
90
6k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
354
29k
Build your cross-platform service in a week with App Engine
jlugia
228
18k
Mobile First: as difficult as doing things right
swwweet
221
8.8k
The Cult of Friendly URLs
andyhume
76
6k
Writing Fast Ruby
sferik
623
60k
Building a Scalable Design System with Sketch
lauravandoore
458
32k
Code Review Best Practice
trishagee
62
16k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
248
20k
BBQ
matthewcrist
83
9.2k
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]