Why you should try React Native

for your next mobile project.

Gwen Faraday

What is React Native?

Why not use native?

  1. Cost
  2. Time
  3. Fewer Developers
  4. Maintenance

Other Solutions - Hybrid

  1. Faster Development
  2. Re-use web skills/developers
  3. Doesn't feel native!

Why use React Native?

  • Easier
  • Faster
  • Cheaper
  • More maintainable
  • Looks and Feels great - don't notice jank
  • Strong Community
  • Stable in production

Why Companies like React Native

  1. Fast Developer Iteration
  2. Cross Platform Code Sharing/Re-use
  3. Native Views
  4. Performance

React - JSX

import React, { Component } from 'react';
import ReactDOM from 'react-dom';

class App extends Component {
  render() {
    return (
      <div>
        <h1>
          Hello App!
        </h1>
      </div>
    ); 
  }
}

ReactDOM.render(<App />, document.getElementById('root'));

React Native - JSX

import React, { Component } from 'react';
import { AppRegistry, View, Text } from 'react-native';

class App extends Component {
  render() {
    return (
      <View>
        <Text>
          Hello App!
        </Text>
      </View>
    );
  }
}
AppRegistry.registerComponent('AwesomeProject', () => App);

Embedded Native Code

#import 
@interface CalendarManager : NSObject 
@end

@implementation CalendarManager
RCT_EXPORT_MODULE();
@end

//javascript
import { NativeModules } from 'react-native';
var CalendarManager = NativeModules.CalendarManager;
CalendarManager.addEvent('Birthday Party', '4 Privet Drive, Surrey');
                    

iOS and Android

Datetime Picker

Getting Started #1

  • Install Node and Python
  • Install React Native CLI
  • Xcode and Android Studio
  • Set up emulators and Marshmallow
  • Configure environmental variables

Getting Started #2

Expo XDE

$ npm i -g create-react-native-app
$ create-react-native-app my-app
$ cd my-app
$ npm start

Project Setup

$ react-native init app-name
$ react-native run-ios
$ react-native run-android

React Native

Microsoft Code Push

  • Can only push over the air updates through the JavaScriptCore.
  • Apples Terms:

Other Exciting Advancements

Should I trust Facebook running the React Native project?

Resource Links

Thanks for Coming!

Made with Slides.com