SlideShare a Scribd company logo
1 of 39
Download to read offline
REACT NATIVE 入門
自己紹介
▸ 奥宮 誠一
▸ リレーションズ株式会社 / スマートメンテ
▸ インフラ(AWS)
▸ サーバサイド(Java, PHP, node)
▸ フロント(最近 React Native)
アジェンダ
▸ React Native とは
▸ React の仕組みでモバイルアプリが作れる
▸ ネイティブアプリと遜色ないパフォーマンス
▸ 実際に使ってみて…
▸ クロスプラットフォーム?
▸ React との共通化?
▸ まとめ
REACT NATIVE とは
REACT NATIVE とは
▸ Facebook が 2015年に発表したモバイルアプリ開発のた
めのフレームワーク(OSS)
▸ React の作法(Webの技術)で、iOS / Android のネイ
ティブアプリをクロスプラットフォーム開発できる
▸ “Learn Once, Write Anywhere”
▸ 現在 v0.32(2-week train release)
▸ 本家 Facebook のほか いろんなアプリで利用されている

(RN 公式サイトに SHOWCASE あります)
REACT NATIVE とは
REACT NATIVE とは
▸ Netflix, Airbnb も React Native を採用(検討中?)
REACTの仕組みで

モバイルアプリが作れる
特色1
REACTの仕組みでモバイルアプリが作れる
▸ モダンJavaScript
▸ コンポーネント指向
▸ JSX
▸ CSS like な Style, Layout
▸ Fluxアーキテクチャ(Redux)
REACTの仕組みでモバイルアプリが作れる
▸ モダンJavaScript
▸ コンポーネント指向
▸ JSX
▸ CSS like な Style, Layout
▸ Fluxアーキテクチャ(Redux)
・ES6
・ES7
・Object Spread
・Async Functions


.babelrc

{
"presets": ["react-native"]
}
REACTの仕組みでモバイルアプリが作れる
▸ モダンJavaScript
▸ コンポーネント指向
▸ JSX
▸ CSS like な Style, Layout
▸ Fluxアーキテクチャ(Redux)
・React同様、UIコンポーネントを組み合わせてアプリを実装

・UIコンポーネントはJSXで記述できる
React:

 ・HTMLタグ(<div>, <span>, …)
 ・DOMレンダラー

React Native:
 ・Nativeコンポーネント(<View>, <Text>, <Navigator> …)
 ・Nativeレンダラー
REACTの仕組みでモバイルアプリが作れる
import React, { Component } from 'react';
import { AppRegistry, Text } from ‘react-native';
class HelloWorldApp extends Component {
render() {
return (
<View>
<Text>Hello world!</Text>
</View>
);
}
}
AppRegistry.registerComponent('HelloWorldApp', () => HelloWorldApp);
REACTの仕組みでモバイルアプリが作れる
▸ モダンJavaScript
▸ コンポーネント指向
▸ JSX
▸ CSS like な Style, Layout
▸ Fluxアーキテクチャ(Redux)
・UIコンポーネントのスタイルやレイアウトは、style プロパティで指定する
ことができる
・syntax は CSS とほぼ同じ
・レイアウトには flexbox を使うことができる (× float)
REACTの仕組みでモバイルアプリが作れる
import React, { Component } from 'react';
import { AppRegistry, View } from 'react-native';
class JustifyContentBasics extends Component {
render() {
return (
<View style={{
flex: 1,
flexDirection: ‘column', // flexアイテムを上から下に並べる
justifyContent: ‘space-between', // flexアイテムを均等の間隔で並べる
}}>
<View style={{width: 50, height: 50, backgroundColor: 'powderblue'}} />
<View style={{width: 50, height: 50, backgroundColor: 'skyblue'}} />
<View style={{width: 50, height: 50, backgroundColor: 'steelblue'}} />
</View>
);
}
};
AppRegistry.registerComponent('AwesomeProject', () => JustifyContentBasics);
REACTの仕組みでモバイルアプリが作れる
▸ モダンJavaScript
▸ コンポーネント指向
▸ JSX
▸ CSS like な Style, Layout
▸ Fluxアーキテクチャ(Redux)
・データフローには Redux を使用することができる

・React Redux(react-redux): React Native でも動作する
REACTの仕組みでモバイルアプリが作れる
▸ モダンJavaScript
▸ コンポーネント指向
▸ JSX
▸ CSS like な Style, Layout
▸ Fluxアーキテクチャ(Redux)
REACT が書ければ
REACT NATIVE もだいたい書けそう!
ネイティブアプリと

遜色ないパフォーマンス
特色2
ネイティブアプリと遜色ないパフォーマンス
▸ ReactNative !=「WebView上で動作するWebアプリ」
▸ JavaScript のコードをプラットフォームのJSランタイム
で動かし、ネイティブのUIコンポーネントとやりとりを
行う

→ JavaScriptで書くが、実際のUIはネイティブのコード
で実行
REACT NATIVECORDOVA
ネイティブアプリと遜色ないパフォーマンス
iOS Android
Code
WebView WebView
CodeiOS bundle Android bundle
iOS Android
- UI は WebView上で動作する。

- ネイティブの機能も一部使えるが、

基本 Webアプリ(HTML5)なので、

そこがパフォーマンス面での制約と

なりがち。

- 既存のWebアプリを基本そのまま

WebView上で動かせる。
- React Nativeは JSのランタイムをもっている。

- JSで書かれたコードを各プラットフォーム向けに

ビルドしてアプリにバンドルし、JSランタイムで

動作させる仕組み。

- UI は各プラットフォームのネイティブのコンポー

ネントをレンダリングしており、パフォーマンスは

ネイティブアプリと原理上同じ。
ネイティブアプリと遜色ないパフォーマンス
Platfor
m

APIs
Platfor
m

UI

Compon
ents
UI

thread

(main)
Shadow

thread
JS

thread
BRIDGE
Java Script Native
ネイティブアプリと遜色ないパフォーマンス
http://www.slideshare.net/ModusJesus/optimizing-react-native-views-for-preanimation
ネイティブアプリと遜色ないパフォーマンス
https://speakerdeck.com/frantic/react-native-under-the-hood
ネイティブアプリと遜色ないパフォーマンス
▸ React Native で用意されている ネイティブコンポーネント
▸ Navigator
▸ ListView, ScrollView, WebView, MapView …
▸ TabBar, StatusBar …
▸ DatePicker, Slider, Switch …
▸ CameraRoll, Geolocation, Vibration …
▸ PushNotificationIOS
ネイティブアプリと遜色ないパフォーマンス
▸ コンポーネントがデフォルトで用意されていない場合
▸ ネイティブモジュールを自作する
▸ RCTBridgeModule (iOS/Objective-C)
▸ ReactContextBaseJavaModule (Android/Java)
▸ サードパーティの npm を利用する
ネイティブアプリと遜色ないパフォーマンス
https://github.com/jondot/awesome-react-native
ネイティブアプリと遜色ないパフォーマンス
UI のパフォーマンスはネイティブと同等。

ロジック部分(JS)は書き方によっては重くなるので注意。



各プラットフォームのネイティブコンポーネントを使う分

コーディングの手間が増えるのは確か。

(× Write Once, Run Anywhere / ◯ Learn Once, Write Anywhere)



ただ、パフォーマンス的には
それをおぎなって余りある恩恵が得られる!
実際に使ってみて...
実際に使ってみて...
▸ 基本、いい感じ!
▸ ウェブエンジニアもそれっぽいネイティブアプリ作れる
▸ しんどい点
▸ 情報少ない(盛り上げていきましょう!)
▸ バージョンアップ、悩ましい…(npmが…)
▸ それなりの規模のアプリをちゃんと作ろうとすると、直
面する課題がいくつかあった
クロスプラットフォーム?
クロスプラットフォーム?
▸ すべてのネイティブコンポーネントが React Native のライブラリ
に用意されているわけではない
▸ 基本、iOS のほうが整備されているので、両プラットフォームで同
機能のアプリを作ろうとした場合、Android 側が…っていうケース
がままある。
▸ サードパーティの npm で概ね対処できた。が、それでも個別に
対応するのけっこう手間がかかる。
▸ シミュレータだと動いたのに実機だとダメ… という npm もあった
りする(redux-api-middleware は Android 実機ではうごかなかっ
た)
クロスプラットフォーム?
▸ View に関しても、OS・機種依存がそれなりにはある
▸ (とはいえ flexbox できちんと書けばほぼ問題ないレベルかな)
▸ 今回使わなかったが、react-native-material-kit 等の UI コン
ポーネントライブラリを使えば、実行環境の差異も吸収してくれ
るのかもしれない
▸ ナビゲーションまわりとか、UXをより各OSネイティブに寄せる
のであれば、View の実装は OS ごとに分けるべき

(ReactNative では OS 別に実装を簡単に分けられる仕組みに
なっている)
REACTとの共通化?
REACTとの共通化?
▸ 前提:
▸ アプリとウェブ、両方出したい
▸ View はアプリとウェブとで別物
▸ View も同じだったら、Cordova/WebView が手軽でよさげ
▸ 共通化できるものはなるべく共通化したい
▸ データモデル(Model層)
▸ API接続まわり(Service層)
▸ 表示用データ整形などのロジック(Logic層)
REACTとの共通化?
View
Store Reducers
Action

Creators
Container
Components
dispatch(action) (prevState, action)
(newState)
(state)
(props)
interaction
よくある Redux の構成
REACTとの共通化?
View
Store Reducers
Action

Creators
Container
Components
dispatch(action) (prevState, action)
(newState)
(state)
(props)
interaction
Services
Models
Logics
- API接続

- JSON -> Model
- Viewまわりの共通処理
View に依存しない部分を切り出し
REACTとの共通化?
View
Store Reducers
Action

Creators
Container
Componen
ts
Services Models Logics
View
Store Reducers
Action

Creators
Container
Componen
ts
ウェブ(React) アプリ(React Native)
共通(npmモジュール化)
REACTとの共通化?
▸ 共通部分をモジュール化した理由
▸ もともと、Web も Native も同じリポジトリで実装しようと思って
いた(共通化前提で)。
▸ React Native は頻繁にバージョンアップするため、そのたびに
npm パッケージの依存関係がコンフリクトしたりして、メンテの負
担が結構かかることが判明。
▸ メンテの負担を軽くするため、Web と Native とでリポジトリを分
けることに。
▸ Web / Native どちらのリポジトリからも利用できるように共通部分
はさらに別のリポジトリに切り出した。
まとめ
▸ ウェブエンジニア(とくにReact経験者)が気軽にネイティブアプリを
作ることができるフレームワーク。
▸ WebViewベースのハイブリッドアプリより、各プラットフォームへ対
応させるための実装工数はかかる。が、その分レンダリングのパフォー
マンスは高いし、ネイティブの機能もストレスなく使うことができる。
▸ React のコードが、そのまま React Native で使えるわけではない
(Learn Once, Write Anywhere)。共通化するのであれば、どこが共
通化できるか、設計段階から検討しておいたほうがよい。

(既存のReactコードをそのままアプリにしたいのであれば、
Cordova/Webview のほうが工数的にはるかに楽だと思います)
ご静聴

ありがとうございました

More Related Content

What's hot

JJUGCCC2022spring_連続画像処理による位置情報計算を支えるマイクロサービスアーキテクチャ
JJUGCCC2022spring_連続画像処理による位置情報計算を支えるマイクロサービスアーキテクチャJJUGCCC2022spring_連続画像処理による位置情報計算を支えるマイクロサービスアーキテクチャ
JJUGCCC2022spring_連続画像処理による位置情報計算を支えるマイクロサービスアーキテクチャKaname Motoyama
 
MongoDB very basic (Japanese) / MongoDB基礎の基礎
MongoDB very basic (Japanese) / MongoDB基礎の基礎MongoDB very basic (Japanese) / MongoDB基礎の基礎
MongoDB very basic (Japanese) / MongoDB基礎の基礎Naruhiko Ogasawara
 
Cognitive Complexity でコードの複雑さを定量的に計測しよう
Cognitive Complexity でコードの複雑さを定量的に計測しようCognitive Complexity でコードの複雑さを定量的に計測しよう
Cognitive Complexity でコードの複雑さを定量的に計測しようShuto Suzuki
 
DeNAオリジナル ゲーム専用プラットフォーム Sakashoについて
DeNAオリジナル ゲーム専用プラットフォーム SakashoについてDeNAオリジナル ゲーム専用プラットフォーム Sakashoについて
DeNAオリジナル ゲーム専用プラットフォーム SakashoについてMakoto Haruyama
 
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)NTT DATA Technology & Innovation
 
ソーシャルゲームにおけるMongoDB適用事例 - Animal Land
ソーシャルゲームにおけるMongoDB適用事例 - Animal LandソーシャルゲームにおけるMongoDB適用事例 - Animal Land
ソーシャルゲームにおけるMongoDB適用事例 - Animal LandMasakazu Matsushita
 
モンスターストライクにおける負荷対策
モンスターストライクにおける負荷対策モンスターストライクにおける負荷対策
モンスターストライクにおける負荷対策Yusuke Shirakawa
 
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティスAWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティスAkihiro Kuwano
 
코딩 테스트 및 알고리즘 문제해결 공부 방법 (고려대학교 KUCC, 2022년 4월)
코딩 테스트 및 알고리즘 문제해결 공부 방법 (고려대학교 KUCC, 2022년 4월)코딩 테스트 및 알고리즘 문제해결 공부 방법 (고려대학교 KUCC, 2022년 4월)
코딩 테스트 및 알고리즘 문제해결 공부 방법 (고려대학교 KUCC, 2022년 4월)Suhyun Park
 
KLabのエンジニアを支えるカルチャー
KLabのエンジニアを支えるカルチャーKLabのエンジニアを支えるカルチャー
KLabのエンジニアを支えるカルチャーKLab Inc. / Tech
 
分割と整合性と戦う
分割と整合性と戦う分割と整合性と戦う
分割と整合性と戦うYugo Shimizu
 
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...Shinji Takao
 
DevOpsに求められる様々な技術とその連携の学習方法
DevOpsに求められる様々な技術とその連携の学習方法DevOpsに求められる様々な技術とその連携の学習方法
DevOpsに求められる様々な技術とその連携の学習方法CASAREAL, Inc.
 
AWS Elastic BeanstalkとAWS Lambdaのご紹介
AWS Elastic BeanstalkとAWS Lambdaのご紹介AWS Elastic BeanstalkとAWS Lambdaのご紹介
AWS Elastic BeanstalkとAWS Lambdaのご紹介Akio Katayama
 
ストリーム処理プラットフォームにおけるKafka導入事例 #kafkajp
ストリーム処理プラットフォームにおけるKafka導入事例 #kafkajpストリーム処理プラットフォームにおけるKafka導入事例 #kafkajp
ストリーム処理プラットフォームにおけるKafka導入事例 #kafkajpYahoo!デベロッパーネットワーク
 
나는 어떻게 알고리즘을 공부했을까? + 신기한 방법으로 문제 풀어보기
나는 어떻게 알고리즘을 공부했을까? + 신기한 방법으로 문제 풀어보기나는 어떻게 알고리즘을 공부했을까? + 신기한 방법으로 문제 풀어보기
나는 어떻게 알고리즘을 공부했을까? + 신기한 방법으로 문제 풀어보기Baekjoon Choi
 
Pythonによる黒魔術入門
Pythonによる黒魔術入門Pythonによる黒魔術入門
Pythonによる黒魔術入門大樹 小倉
 
PEGで構文解析をする
PEGで構文解析をするPEGで構文解析をする
PEGで構文解析をするjiro4989
 
テストコードの DRY と DAMP
テストコードの DRY と DAMPテストコードの DRY と DAMP
テストコードの DRY と DAMPYusuke Kagata
 

What's hot (20)

JJUGCCC2022spring_連続画像処理による位置情報計算を支えるマイクロサービスアーキテクチャ
JJUGCCC2022spring_連続画像処理による位置情報計算を支えるマイクロサービスアーキテクチャJJUGCCC2022spring_連続画像処理による位置情報計算を支えるマイクロサービスアーキテクチャ
JJUGCCC2022spring_連続画像処理による位置情報計算を支えるマイクロサービスアーキテクチャ
 
MongoDB very basic (Japanese) / MongoDB基礎の基礎
MongoDB very basic (Japanese) / MongoDB基礎の基礎MongoDB very basic (Japanese) / MongoDB基礎の基礎
MongoDB very basic (Japanese) / MongoDB基礎の基礎
 
Cognitive Complexity でコードの複雑さを定量的に計測しよう
Cognitive Complexity でコードの複雑さを定量的に計測しようCognitive Complexity でコードの複雑さを定量的に計測しよう
Cognitive Complexity でコードの複雑さを定量的に計測しよう
 
DeNAオリジナル ゲーム専用プラットフォーム Sakashoについて
DeNAオリジナル ゲーム専用プラットフォーム SakashoについてDeNAオリジナル ゲーム専用プラットフォーム Sakashoについて
DeNAオリジナル ゲーム専用プラットフォーム Sakashoについて
 
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
 
ソーシャルゲームにおけるMongoDB適用事例 - Animal Land
ソーシャルゲームにおけるMongoDB適用事例 - Animal LandソーシャルゲームにおけるMongoDB適用事例 - Animal Land
ソーシャルゲームにおけるMongoDB適用事例 - Animal Land
 
モンスターストライクにおける負荷対策
モンスターストライクにおける負荷対策モンスターストライクにおける負荷対策
モンスターストライクにおける負荷対策
 
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティスAWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティス
 
코딩 테스트 및 알고리즘 문제해결 공부 방법 (고려대학교 KUCC, 2022년 4월)
코딩 테스트 및 알고리즘 문제해결 공부 방법 (고려대학교 KUCC, 2022년 4월)코딩 테스트 및 알고리즘 문제해결 공부 방법 (고려대학교 KUCC, 2022년 4월)
코딩 테스트 및 알고리즘 문제해결 공부 방법 (고려대학교 KUCC, 2022년 4월)
 
KLabのエンジニアを支えるカルチャー
KLabのエンジニアを支えるカルチャーKLabのエンジニアを支えるカルチャー
KLabのエンジニアを支えるカルチャー
 
分割と整合性と戦う
分割と整合性と戦う分割と整合性と戦う
分割と整合性と戦う
 
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
 
DevOpsに求められる様々な技術とその連携の学習方法
DevOpsに求められる様々な技術とその連携の学習方法DevOpsに求められる様々な技術とその連携の学習方法
DevOpsに求められる様々な技術とその連携の学習方法
 
AWS Elastic BeanstalkとAWS Lambdaのご紹介
AWS Elastic BeanstalkとAWS Lambdaのご紹介AWS Elastic BeanstalkとAWS Lambdaのご紹介
AWS Elastic BeanstalkとAWS Lambdaのご紹介
 
Mavenの真実とウソ
Mavenの真実とウソMavenの真実とウソ
Mavenの真実とウソ
 
ストリーム処理プラットフォームにおけるKafka導入事例 #kafkajp
ストリーム処理プラットフォームにおけるKafka導入事例 #kafkajpストリーム処理プラットフォームにおけるKafka導入事例 #kafkajp
ストリーム処理プラットフォームにおけるKafka導入事例 #kafkajp
 
나는 어떻게 알고리즘을 공부했을까? + 신기한 방법으로 문제 풀어보기
나는 어떻게 알고리즘을 공부했을까? + 신기한 방법으로 문제 풀어보기나는 어떻게 알고리즘을 공부했을까? + 신기한 방법으로 문제 풀어보기
나는 어떻게 알고리즘을 공부했을까? + 신기한 방법으로 문제 풀어보기
 
Pythonによる黒魔術入門
Pythonによる黒魔術入門Pythonによる黒魔術入門
Pythonによる黒魔術入門
 
PEGで構文解析をする
PEGで構文解析をするPEGで構文解析をする
PEGで構文解析をする
 
テストコードの DRY と DAMP
テストコードの DRY と DAMPテストコードの DRY と DAMP
テストコードの DRY と DAMP
 

Viewers also liked

アプリエンジニアがReactNativeに乗り換えたら
アプリエンジニアがReactNativeに乗り換えたらアプリエンジニアがReactNativeに乗り換えたら
アプリエンジニアがReactNativeに乗り換えたらkzm hr
 
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017Carol Smith
 
NativeBaseをはじめとするUIに関する ライブラリを使ったサンプルを作ってみた
NativeBaseをはじめとするUIに関する ライブラリを使ったサンプルを作ってみたNativeBaseをはじめとするUIに関する ライブラリを使ったサンプルを作ってみた
NativeBaseをはじめとするUIに関する ライブラリを使ったサンプルを作ってみたFumiya Sakai
 
React Nativeで始めるアプリ開発
React Nativeで始めるアプリ開発React Nativeで始めるアプリ開発
React Nativeで始めるアプリ開発Ryosuke Hara
 
React NativeでTwitterクライアントを作ってみよう
React NativeでTwitterクライアントを作ってみようReact NativeでTwitterクライアントを作ってみよう
React NativeでTwitterクライアントを作ってみようdcubeio
 
AWS クラウドで構築するスマホアプリ バックエンド
AWS クラウドで構築するスマホアプリ バックエンドAWS クラウドで構築するスマホアプリ バックエンド
AWS クラウドで構築するスマホアプリ バックエンドkaki_k
 

Viewers also liked (9)

アプリエンジニアがReactNativeに乗り換えたら
アプリエンジニアがReactNativeに乗り換えたらアプリエンジニアがReactNativeに乗り換えたら
アプリエンジニアがReactNativeに乗り換えたら
 
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
 
React native - What, Why, How?
React native - What, Why, How?React native - What, Why, How?
React native - What, Why, How?
 
NativeBaseをはじめとするUIに関する ライブラリを使ったサンプルを作ってみた
NativeBaseをはじめとするUIに関する ライブラリを使ったサンプルを作ってみたNativeBaseをはじめとするUIに関する ライブラリを使ったサンプルを作ってみた
NativeBaseをはじめとするUIに関する ライブラリを使ったサンプルを作ってみた
 
React Nativeで始めるアプリ開発
React Nativeで始めるアプリ開発React Nativeで始めるアプリ開発
React Nativeで始めるアプリ開発
 
React NativeでTwitterクライアントを作ってみよう
React NativeでTwitterクライアントを作ってみようReact NativeでTwitterクライアントを作ってみよう
React NativeでTwitterクライアントを作ってみよう
 
AWS クラウドで構築するスマホアプリ バックエンド
AWS クラウドで構築するスマホアプリ バックエンドAWS クラウドで構築するスマホアプリ バックエンド
AWS クラウドで構築するスマホアプリ バックエンド
 
10 facts about jobs in the future
10 facts about jobs in the future10 facts about jobs in the future
10 facts about jobs in the future
 
The AI Rush
The AI RushThe AI Rush
The AI Rush
 

Similar to React Native 入門

React Native + Expoでアプリを開発してみた話
React Native + Expoでアプリを開発してみた話React Native + Expoでアプリを開発してみた話
React Native + Expoでアプリを開発してみた話GIG inc.
 
React Nativeで考えるクロスプラットフォーム開発
React Nativeで考えるクロスプラットフォーム開発React Nativeで考えるクロスプラットフォーム開発
React Nativeで考えるクロスプラットフォーム開発yuichi kubota
 
React Nativeってどうなの?
React Nativeってどうなの?React Nativeってどうなの?
React Nativeってどうなの?Ryosuke Hara
 
React Nativeで開発するマルチプラットフォームアプリ
React Nativeで開発するマルチプラットフォームアプリReact Nativeで開発するマルチプラットフォームアプリ
React Nativeで開発するマルチプラットフォームアプリMasayuki Iwai
 
React.js・ReactNative・Redux入門
React.js・ReactNative・Redux入門React.js・ReactNative・Redux入門
React.js・ReactNative・Redux入門Kazuhiro Yoshimoto
 
JavaScript(AngularJS・React.js)で作る iOS・Androidアプリハンズオン
JavaScript(AngularJS・React.js)で作る iOS・AndroidアプリハンズオンJavaScript(AngularJS・React.js)で作る iOS・Androidアプリハンズオン
JavaScript(AngularJS・React.js)で作る iOS・AndroidアプリハンズオンKazuhiro Yoshimoto
 
React.jsでサービスを作ってみた話
React.jsでサービスを作ってみた話React.jsでサービスを作ってみた話
React.jsでサービスを作ってみた話GIG inc.
 
簡単モバイルアプリ開発 クラウドベース開発環境Monacaを使う
簡単モバイルアプリ開発  クラウドベース開発環境Monacaを使う簡単モバイルアプリ開発  クラウドベース開発環境Monacaを使う
簡単モバイルアプリ開発 クラウドベース開発環境Monacaを使うHiroki OKAZAKI
 
JavaScript(AngularJS)で作る iOS・Androidアプリ開発ハンズオン
JavaScript(AngularJS)で作る iOS・Androidアプリ開発ハンズオンJavaScript(AngularJS)で作る iOS・Androidアプリ開発ハンズオン
JavaScript(AngularJS)で作る iOS・Androidアプリ開発ハンズオンKazuhiro Yoshimoto
 
Create android app can send SMS and Email by React Natice
Create android app can send SMS and Email by React NaticeCreate android app can send SMS and Email by React Natice
Create android app can send SMS and Email by React NaticeGMO-Z.com Vietnam Lab Center
 
2016/05/01 Visual Studio with Cordova
2016/05/01 Visual Studio with Cordova2016/05/01 Visual Studio with Cordova
2016/05/01 Visual Studio with Cordovamiso- soup3
 
スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向Tsutomu Ogasawara
 
cordova/electronの構造を知る
cordova/electronの構造を知るcordova/electronの構造を知る
cordova/electronの構造を知るYasuharu Seki
 
社内LTネタ ReactNative
社内LTネタ ReactNative社内LTネタ ReactNative
社内LTネタ ReactNativeOguri Toru
 
Meteor intro-2015-rev1- 日本語バージョン
Meteor intro-2015-rev1- 日本語バージョンMeteor intro-2015-rev1- 日本語バージョン
Meteor intro-2015-rev1- 日本語バージョンKatsumi Honda
 
Java scriptの進化
Java scriptの進化Java scriptの進化
Java scriptの進化maruyama097
 
Pre react native0504
Pre react native0504Pre react native0504
Pre react native0504卓馬 三浦
 
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフラインWebフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフラインShumpei Shiraishi
 
Visual Studio TypeScript npm WebPack
Visual Studio TypeScript npm WebPackVisual Studio TypeScript npm WebPack
Visual Studio TypeScript npm WebPackAkihiro Ehara
 

Similar to React Native 入門 (20)

React Native + Expoでアプリを開発してみた話
React Native + Expoでアプリを開発してみた話React Native + Expoでアプリを開発してみた話
React Native + Expoでアプリを開発してみた話
 
React Nativeで考えるクロスプラットフォーム開発
React Nativeで考えるクロスプラットフォーム開発React Nativeで考えるクロスプラットフォーム開発
React Nativeで考えるクロスプラットフォーム開発
 
React Nativeってどうなの?
React Nativeってどうなの?React Nativeってどうなの?
React Nativeってどうなの?
 
React Nativeで開発するマルチプラットフォームアプリ
React Nativeで開発するマルチプラットフォームアプリReact Nativeで開発するマルチプラットフォームアプリ
React Nativeで開発するマルチプラットフォームアプリ
 
React.js・ReactNative・Redux入門
React.js・ReactNative・Redux入門React.js・ReactNative・Redux入門
React.js・ReactNative・Redux入門
 
JavaScript(AngularJS・React.js)で作る iOS・Androidアプリハンズオン
JavaScript(AngularJS・React.js)で作る iOS・AndroidアプリハンズオンJavaScript(AngularJS・React.js)で作る iOS・Androidアプリハンズオン
JavaScript(AngularJS・React.js)で作る iOS・Androidアプリハンズオン
 
React.jsでサービスを作ってみた話
React.jsでサービスを作ってみた話React.jsでサービスを作ってみた話
React.jsでサービスを作ってみた話
 
簡単モバイルアプリ開発 クラウドベース開発環境Monacaを使う
簡単モバイルアプリ開発  クラウドベース開発環境Monacaを使う簡単モバイルアプリ開発  クラウドベース開発環境Monacaを使う
簡単モバイルアプリ開発 クラウドベース開発環境Monacaを使う
 
JavaScript(AngularJS)で作る iOS・Androidアプリ開発ハンズオン
JavaScript(AngularJS)で作る iOS・Androidアプリ開発ハンズオンJavaScript(AngularJS)で作る iOS・Androidアプリ開発ハンズオン
JavaScript(AngularJS)で作る iOS・Androidアプリ開発ハンズオン
 
Create android app can send SMS and Email by React Natice
Create android app can send SMS and Email by React NaticeCreate android app can send SMS and Email by React Natice
Create android app can send SMS and Email by React Natice
 
2016/05/01 Visual Studio with Cordova
2016/05/01 Visual Studio with Cordova2016/05/01 Visual Studio with Cordova
2016/05/01 Visual Studio with Cordova
 
スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向
 
cordova/electronの構造を知る
cordova/electronの構造を知るcordova/electronの構造を知る
cordova/electronの構造を知る
 
社内LTネタ ReactNative
社内LTネタ ReactNative社内LTネタ ReactNative
社内LTネタ ReactNative
 
Meteor intro-2015-rev1- 日本語バージョン
Meteor intro-2015-rev1- 日本語バージョンMeteor intro-2015-rev1- 日本語バージョン
Meteor intro-2015-rev1- 日本語バージョン
 
Introduce React Native
Introduce React NativeIntroduce React Native
Introduce React Native
 
Java scriptの進化
Java scriptの進化Java scriptの進化
Java scriptの進化
 
Pre react native0504
Pre react native0504Pre react native0504
Pre react native0504
 
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフラインWebフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
 
Visual Studio TypeScript npm WebPack
Visual Studio TypeScript npm WebPackVisual Studio TypeScript npm WebPack
Visual Studio TypeScript npm WebPack
 

React Native 入門