AlexeyVolkov
Rumble News,Tel Aviv
React Native.
Introduction
What’s your problem?
http://www.ft86club.com/forums/showthread.php?p=2064659
Cons:
• Speed of development
• Size of team -➤ cost
Cons:
• Application performance
• “Write once…” is utopia
• Same approaches to deal
with UI
propertycross.com
React DOM React Native
Facebook Ads Manager
iOS - 7 engineers - 5 months
Android (after iOS) - same 7 engineers - 3 months
87% (!) code reuse
Pros:
1. Build & install on every change

Instant reload
2. Different environments for each platform

Single environment for multiple platforms
3. Imperative APIs

Declarative APIs
Requirements:
• OSX
• Homebrew 

(to install nvm, watchman and flow)
• Node.js 4.0 nvm install node && nvm alias default node
• Xcode 6.3+ / Android Studio
• iOS 7+ / Android 5.1.1 (API 22)
• npm install -g react-native-cli
• react-native init BlaBlaProject
Let the fun begin!
iOS & Android: two ways to differentiate
if (Platform.OS === ‘android’) {
// Android
} else if (Platform.OS === ‘ios’) {
// iOS
} else {
// Who knows?
}
SearchScreen.ios.js
SearchScreen.android.js
Hybrid apps support
What’s next?
1. New asset system
2. Better developer tooling
3. More Android modules
facebook.github.io/react-native/
ReactNative.com
AppHub.io
React Native Playground
• awesome-react-native

github.com/jondot/awesome-react-native
• “An iOS Developer on React Native”

goo.gl/6rxAzx
Questions?

Алексей Волков "Введение в React Native"