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
sip-of-reactjs
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Prathamesh Sonpatki
July 25, 2015
2
900
sip-of-reactjs
Check bit.ly/sip-of-reactjs
Prathamesh Sonpatki
July 25, 2015
Tweet
Share
More Decks by Prathamesh Sonpatki
See All by Prathamesh Sonpatki
Secrets to Monitor Kubernetes Workloads
prathamesh
1
100
The Complete Handbook to OpenTelemetry Metrics
prathamesh
1
71
Breaking down the Pillars of Observability: From data to outcomes
prathamesh
0
85
Monitoring vs. Debugging
prathamesh
0
160
Handling High Cardinality in Observability
prathamesh
1
100
Setting up Monitoring for Kubernetes
prathamesh
0
300
Monitoring vs. Debugging - SRE BLR Meetup
prathamesh
0
88
Monitoring vs. Debugging - IG Meetup 22nd July
prathamesh
2
110
Pune_User_Group.pdf
prathamesh
0
110
Featured
See All Featured
Paper Plane (Part 1)
katiecoart
PRO
0
4.1k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
6.9k
Music & Morning Musume
bryan
47
7.1k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
A Soul's Torment
seathinner
5
2.2k
Six Lessons from altMBA
skipperchong
29
4.1k
ラッコキーワード サービス紹介資料
rakko
1
2.3M
Fireside Chat
paigeccino
41
3.8k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
170
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Transcript
Sip of React.JS Prathamesh Sonpatki @_cha1tanya
None
Agenda http://bit.ly/sip-of-reactjs
Open Library Search Project
React
Build UI
V in MVC
Simple
Declarative
if encodingCompleted removeLoader(); updateHeaderText(‘Encoding completed.’) else showLoader();
if encodingCompleted removeLoader(); updateHeaderText(‘Encoding completed.’) else showLoader(); if encodingCompleted <header>Encoding
Completed</header> else <div>Loading…</div>
Unconventional ideas
Hello World
"The secret to building large apps is never build large
apps. Break your applications into small pieces. Then, assemble those testable, bite-sized pieces into your big application" Justin Meyer, author of CanJS
Components
Component is fn()
Reusable
Composable
Separation of concerns
Let’s look closely
ಠ_ಠ
JSX
None
JSX is like a healthy vegetable that tastes like decadent
chocolate cake. You feel guilty, but it’s good. Eric Elliot
Give it 5 minutes https://signalvnoise.com/posts/3124- give-it-five-minutes
One book at a time
No templates
Any sufficiently complicated templating language contains an ad hoc, informally-specified,
bug-ridden, slow implementation of a turing complete programming language. - Jasim A Basheer
List of books
React === JavaScript #=> true
Managing Data
Data changing over time is root of evil Pete Hunt
Props
Immutable
One way data flow
Parent to Child
Child to Parent ????
propTypes
State
State is internal
getInitialState()
Responding to state changes
setState()
Refresh
Re-Rendering the component
Re-Rendering the component tree
Will it be too slow?
Virtual DOM
Diff
Minimal set of changes
Batch updates
Nothing is new!
Component Lifecycle hooks
componentWillMount componentDidMount componentWillReceiveProps componentWillUnmount componentDidUnmount
Some patterns
Avoid state as much as possible
props > state
Dumb components
Learning Curve
Just JavaScript
Just JavaScript & JSX
Just JavaScript
Easy to sneak into existing projects
Let me know your experience!
Thanks! @_cha1tanya @BigBinary