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
730
[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
20250913_JAWS_sysad_kobe
takuyay0ne
2
240
大「個人開発サービス」時代に僕たちはどう生きるか
sotarok
20
10k
自作JSエンジンに推しプロポーザルを実装したい!
sajikix
1
190
KotlinConf 2025_イベントレポート
sony
1
140
Automating Web Accessibility Testing with AI Agents
maminami373
0
1.3k
Rustから学ぶ 非同期処理の仕組み
skanehira
1
150
「どこから読む?」コードとカルチャーに最速で馴染むための実践ガイド
zozotech
PRO
0
540
まずはマネコンでちゃちゃっと作ってから、それをCDKにしてみよか。
yamada_r
2
120
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
8.8k
テストを軸にした生き残り術
kworkdev
PRO
0
210
Autonomous Database - Dedicated 技術詳細 / adb-d_technical_detail_jp
oracle4engineer
PRO
4
10k
企業の生成AIガバナンスにおけるエージェントとセキュリティ
lycorptech_jp
PRO
2
190
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
Producing Creativity
orderedlist
PRO
347
40k
What's in a price? How to price your products and services
michaelherold
246
12k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
How to train your dragon (web standard)
notwaldorf
96
6.2k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
810
The Art of Programming - Codeland 2020
erikaheidi
56
13k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
13k
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