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
You might not need redux
Search
Maxime Thirouin
May 23, 2018
Technology
0
900
You might not need redux
More info at
https://moox.io/talk/you-might-not-need-redux/
Maxime Thirouin
May 23, 2018
Tweet
Share
More Decks by Maxime Thirouin
See All by Maxime Thirouin
Dumb CSS-in-JS
moox
0
110
ReasonML et React Native
moox
0
530
C'est qui Reason(ML) et qu'est ce qu'il fait là?
moox
0
950
A static website with React? Really? @dotJS 2016
moox
0
34k
A static website with React? Really?
moox
0
16k
Post CSS era: From preprocessed stylesheets to CSS Modules and inline styles
moox
0
660
[FR] What the fluxk? C'est quoi Redux?
moox
0
720
[FR] Post CSS era: Des feuilles de styles préprocessés aux CSS Modules
moox
1
970
Webpack
moox
0
690
Other Decks in Technology
See All in Technology
新卒(ほぼ)専業Kagglerという選択肢
nocchi1
1
1.9k
現場が抱える様々な問題は “組織設計上” の問題によって生じていることがある / Team-oriented Organization Design 20250827
mtx2s
1
200
第64回コンピュータビジョン勉強会@関東(後編)
tsukamotokenji
0
220
株式会社ARAV 採用案内
maqui
0
260
Oracle Base Database Service:サービス概要のご紹介
oracle4engineer
PRO
2
20k
あとはAIに任せて人間は自由に生きる
kentaro
3
1.1k
アジャイルテストで高品質のスプリントレビューを
takesection
0
100
OCI Bastionサービス
oracle4engineer
PRO
1
130
LLM時代の検索とコンテキストエンジニアリング
shibuiwilliam
2
1.1k
datadog-distribution-of-opentelemetry-collector-intro
tetsuya28
0
240
VPC Latticeのサービスエンドポイント機能を使用した複数VPCアクセス
duelist2020jp
0
110
Yahoo!ニュースにおけるソフトウェア開発
lycorptech_jp
PRO
0
260
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.4k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
For a Future-Friendly Web
brad_frost
179
9.9k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Documentation Writing (for coders)
carmenintech
73
5k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Testing 201, or: Great Expectations
jmmastey
45
7.6k
Music & Morning Musume
bryan
46
6.7k
Statistics for Hackers
jakevdp
799
220k
How GitHub (no longer) Works
holman
315
140k
Transcript
@MoOx Do you need redux? 1 @MoOx
@MoOx Redux is a predictable state container for JavaScript apps.
2
@MoOx 3 State UI Actions Reducer transformed into dispatches passed
to returns new
@MoOx - behave consistently - run in different environments (client,
server, and native) - are easy to test 4 Redux helps you write applications that
@MoOx - live code editing (hot reloading) - time traveling
debugger. 5 Redux provides a great developer experience
@MoOx - persist state (local storage) & boot from it
(CSR & SSR) - serialize actions & save/reuse those - easy undo/redo / time traveling - share business logic between apps 6 Redux allows you to
@MoOx (Not tied to React) 7
@MoOx 8 @MoOx Redux is nice, makes app structuring foreseeable,
forces developers to think about their model
@MoOx But… 9
@MoOx 10 https://www.youtube.com/watch?v=Q54YDGC_t3Y
@MoOx 11 https://twitter.com/housecor/status/962754389533429760
@MoOx “Let’s use Redux everywhere” 12
@MoOx “Let’s use Redux for a form input” 13
@MoOx Redux for a form input? 14 https://github.com/erikras/redux-form
@MoOx If you abuse Redux, all your components might end
up being connect()ed 15 Is this what you want?
@MoOx Be careful not to use redux for everything 16
https://github.com/final-form/react-final-form By the guy that did redux-form, but later
@MoOx Redux + redux-thunk 17 Need at least 3 or
4 files. Reusability--
@MoOx React Context API A Replacement for Redux? 18 https://blog.bitsrc.io/react-context-api-a-replacement-for-redux-6e20790492b3
@MoOx Redux uses context 19
@MoOx Think McFly, think! 20
@MoOx What is setState() again? 21
@MoOx 22
@MoOx 23
@MoOx setState() and passing props might be enough 24 (if
your store is at the top of your app, you can pass things down)
@MoOx setState() 25 Everything fits in a file. Reusability++
@MoOx https://reactjs.org/docs/ react-component.html#setstate 26
@MoOx 27
@MoOx 28
@MoOx 29
@MoOx You might not need redux 30 @MoOx
@MoOx 31 https://medium.com/@dan_abramov/you-might-not-need-redux-be46360cf367
@MoOx 32 https://medium.com/@dan_abramov/you-might-not-need-redux-be46360cf367
@MoOx 33 https://duckduckgo.com/?q=you+might+not+need+redux
@MoOx http://www.youmightnotneedredux.info 34
@MoOx 35 https://twitter.com/jevakallio/status/962968823648391168
@MoOx 36 https://twitter.com/kentcdodds/status/962907908517257216
@MoOx 37 https://twitter.com/housecor/status/962890121027706880
@MoOx Local state is fine 38 https://gist.github.com/gaearon/a9bbb73d57b6e4cc17d7b50807b62f9a
@MoOx 39 https://twitter.com/dan_abramov/status/824308413559668744/photo/1
@MoOx https://gist.github.com/gaearon/64e2c4adce2b4918c96c3db2b44d8f68 Redux without redux 40
@MoOx “Should you do this to your stateful components? Probably
not. Not unless you have a plan to benefit from this additional indirection” 41 https://medium.com/@dan_abramov/you-might-not-need-redux-be46360cf367
@MoOx What redux does, ReasonReact and Elm do 42 Actions
are types, reducers are functions, state is immutable, but at the language level
@MoOx 43
@MoOx “done in collaboration with the ReactJS team” 44 https://reasonml.github.io/reason-react/blog/2017/09/01/reducers.html
@MoOx - Does my app need this? - Does my
team need this? - Does my product need this? @MoOx 45 Before adding Redux (and other fancy things)
@MoOx Do my users need this? 46
@MoOx Redux is nice But not required 47
@MoOx Use Redux when it’s necessary not before 48 Like
any other tool
@MoOx Let’s love Redux Let’s hate Redux 49
@MoOx (More “you might not need”?) 50 https://youmightnotneed.com
@MoOx 51 Questions ? https://moox.io/ @MoOx Maxime Thirouin