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
Immutable, Performance and Component Communication
Search
Randy Lien
March 23, 2015
Programming
0
98
Immutable, Performance and Component Communication
React.JS TW fifth meetup
Randy Lien
March 23, 2015
Tweet
Share
More Decks by Randy Lien
See All by Randy Lien
The ideas of Clojure - Things I learn from Clojure
randylien
0
180
Django Girls 2015 - HTML
randylien
1
160
Django Girls 2015 - CSS
randylien
1
110
React.JS Conf & f8
randylien
1
210
Introduce Flux & React in KKBOX
randylien
6
430
What is the next step for a front end beginner
randylien
1
86
Understand front end developer
randylien
2
180
Introduce Flux & React in practice
randylien
8
450
UI Engineering Introduction
randylien
0
47
Other Decks in Programming
See All in Programming
AIコーディングの理想と現実
tomohisa
33
36k
DevOpsDaysTokyo2025社内副業で他部門へ_越境_して見えた価値再定義最大1か月のリードタイムを10分に短縮したDevOps実践.pdf
susumutomita
0
110
On-the-fly Suggestions of Rewriting Method Deprecations
ohbarye
1
4.1k
파급효과: From AI to Android Development
l2hyunwoo
0
150
[NG India] Event-Based State Management with NgRx SignalStore
markostanimirovic
1
180
カウシェで Four Keys の改善を試みた理由
ike002jp
1
110
Deoptimization: How YJIT Speeds Up Ruby by Slowing Down / RubyKaigi 2025
k0kubun
1
1.6k
メモリウォールを超えて:キャッシュメモリ技術の進歩
kawayu
0
1.9k
状態と共に暮らす:ステートフルへの挑戦
ypresto
3
1k
Lambda(Python)の リファクタリングが好きなんです
komakichi
3
230
flutter_kaigi_mini_4.pdf
nobu74658
0
130
設計の本質:コード、システム、そして組織へ / The Essence of Design: To Code, Systems, and Organizations
nrslib
10
3.5k
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
100
5.5k
Making Projects Easy
brettharned
116
6.1k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
5
540
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Unsuck your backbone
ammeep
670
57k
Music & Morning Musume
bryan
47
6.5k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.2k
Producing Creativity
orderedlist
PRO
344
40k
How to train your dragon (web standard)
notwaldorf
91
6k
Fontdeck: Realign not Redesign
paulrobertlloyd
84
5.5k
Build The Right Thing And Hit Your Dates
maggiecrowley
35
2.7k
Transcript
Immutable Performance Randy Lien @React.JS TW 第五次⼩小聚
About Me • @randylien • Front end developer
Agenda • Immutable • Performance • Components Communication • Conclusion
Functional Programming
None
Why Immutable? • Immutable data has no side effect! •
Shared mutable state is the root of all evil - Pete Hunt • You will not get hurt by yourself or someone
None
Why Immutable? (cont.) • Immutable.js is fast enough and memory
optimisation • Why Om is faster ? Data or Value is immutable in Clojure/ClojureScript • Immutable + PureRenderMixin
Simple Made Easy
Performance
Performance • Pure Component (prop & state) • shouldComponentUpdate •
Don’t update when its the same
Performance (cont.) • Container Component Pattern • Container Component as
Data Layer • Data fetching • Component is all about its behaviour • Testing Container or Gallery Container
Components Communication
How to Communicate • Parent - Children • Use Callbacks
• No relationship • Global event hub • Flux • Codecademy • Adapter, broadcast • Channel (CSP) • Cursor (react-cursor)
None
Conclusion
Conclusion • Embracing Immutable data for the future (JavaScript) development
• Componentize your User Interface • Loose coupling your component • Container Component • General Component • You can pick the suitable solution for your needs
None
Conclusion(cont.) • Watch Simple made easy • Try Clojure/ClojureScript
FAQ