changing mobile development
Build mobile applications with web technologies
Uses React to target platforms other than the browser
Performs noticeably better than hybrid apps (Ionic)
Shorter development time than building (android + ios) apps
Abstractions in components
React native bridge
Platform specific native modules
Use almost any javascript utility libraries
Create your own component to native bridge
Endless possibilities!
Components: View, TextInput, Navigator, ListView, ...
APIs: PanResponder, Animated, BackAndroid, AppState, ...
Let's take a look at ListView.
the bad stuffs
Linux guide introduced after Feb 15, 2016
Latest 5 major versions have breaking changes
[import React from 'react-native'] - breaks every packages
Upgrade android project
Babel 6 upgrade
Upgrade to Xcode 7
React Native no longer published to CocoaPods
v0.1 -> CocoaPods
v0.2 -> rnpm
Orientation bridge + Navigator lifecycle
switching orientation async vs. calculating window's dimension
Bridging with Native Modules
Android
Complexity in rendering might result in slow performance
Profiling with Systrace More on optimising React Native: Tools and Tips, by Tadeu Zagallo- Use the right tools for the job
- Young but fast growing community
Contribute to RN components
JS Coach - RN