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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Randy Lien
March 23, 2015
Programming
0
120
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
190
Django Girls 2015 - HTML
randylien
1
180
Django Girls 2015 - CSS
randylien
1
130
React.JS Conf & f8
randylien
1
220
Introduce Flux & React in KKBOX
randylien
6
440
What is the next step for a front end beginner
randylien
1
94
Understand front end developer
randylien
2
200
Introduce Flux & React in practice
randylien
8
460
UI Engineering Introduction
randylien
0
59
Other Decks in Programming
See All in Programming
Goの型安全性で実現する複数プロダクトの権限管理
ishikawa_pro
2
900
社内規程RAGの精度を73.3% → 100%に改善した話
oharu121
13
8.3k
AI活用のコスパを最大化する方法
ochtum
0
280
Takumiから考えるSecurity_Maturity_Model.pdf
gessy0129
1
150
コーディングルールの鮮度を保ちたい / keep-fresh-go-internal-conventions
handlename
0
230
Redox OS でのネームスペース管理と chroot の実現
isanethen
0
410
Understanding Apache Lucene - More than just full-text search
spinscale
0
140
PHP でエミュレータを自作して Ubuntu を動かそう
m3m0r7
PRO
2
130
How to stabilize UI tests using XCTest
akkeylab
0
140
Laravel Nightwatchの裏側 - Laravel公式Observabilityツールを支える設計と実装
avosalmon
1
140
API Platformを活用したPHPによる本格的なWeb API開発 / api-platform-book-intro
ttskch
1
150
メタプログラミングで実現する「コードを仕様にする」仕組み/nikkei-tech-talk43
nikkei_engineer_recruiting
0
210
Featured
See All Featured
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
250
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.4k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
790
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
240
Game over? The fight for quality and originality in the time of robots
wayneb77
1
140
Ethics towards AI in product and experience design
skipperchong
2
230
Context Engineering - Making Every Token Count
addyosmani
9
770
Joys of Absence: A Defence of Solitary Play
codingconduct
1
320
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
Git: the NoSQL Database
bkeepers
PRO
432
67k
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