Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
React エンジニアのための React Native 入門
Search
januswel
August 08, 2016
Programming
3.3k
15
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
React エンジニアのための React Native 入門
januswel
August 08, 2016
More Decks by januswel
See All by januswel
今日からできる環境カイゼン
januswel
0
1k
読みやすいコード クラスメソッド 2022 年度新卒研修
januswel
1
9.9k
Accelerate your business with React Native
januswel
0
2.6k
猫の手も借りたい引っ張りだこ企業による LINE API活用事例発表会! クラスメソッド編
januswel
0
220
現状確認
januswel
0
1k
BLE on React Native
januswel
2
1.6k
polyglot になろう !!
januswel
1
6.3k
React Native & monorepo
januswel
0
1.2k
What is React Native?
januswel
1
1.3k
Other Decks in Programming
See All in Programming
コーディング自動化の次へ。人の介入をゼロにするファクトリーとサポートAIによる実践
timakin
5
4.2k
PyConTW 2026 - AI Coding 不只是工具升級, 區域醫院醫療資訊系統協作開發與資訊團隊轉型實踐
cclai999
0
110
[Dev Group Paris Octobre 26] Agentforce, SIforce, Claudeforce, Slackbot… on s'y retrouve ?
nabondance
0
110
AI時代のTerminal環境を UNIX哲学で設計・運用する
yasunori0418
1
120
作って学ぶSpring BootのAuto Configuration / JJUG Night Seminar 2026-10-19
rshindo
0
190
Rでドレミ/Do-Re-Mi_with_R
florets1
0
130
パズルゲームの作り方 / how to make puzzle games
kaityo256
PRO
2
300
JIS keyboard support in Omarchy
lef237
0
150
Railsのためのパスキー実践入門 〜マルチテナントSaaSでの意思決定〜
utakaha
3
940
HTML-in-Canvasで作る未来のWeb UI表現
clockmaker
5
5.2k
複雑なUIコンポーネントとの ⻑い付き合い⽅:波及するバグからテスト戦略を経て、安全な再設計へ
mixplace
0
440
ソニーのクラウド共通基盤の変遷とAI時代の開発スタイルに合わせた進化 / The Journey of Sony’s Common Cloud Platform and Its Evolution for AI-Native Development
kenjiyoneyama
0
290
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
85
9.7k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
410
Discover your Explorer Soul
emna__ayadi
2
1.3k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.6k
The Invisible Side of Design
smashingmag
301
52k
Fantastic passwords and where to find them - at NoRuKo
philnash
53
4k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
43k
Why Our Code Smells
bkeepers
PRO
340
58k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
290
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
850
Faster Mobile Websites
deanohume
310
32k
Large-scale JavaScript Application Architecture
addyosmani
516
110k
Transcript
React エンジニアのための React Native 入門 2016/08/08 Node 学園 22 時限目
by janus_wel
しゃべるひと janus_wel やぬす tech lead@CureApp iOS, Android ともにネイティブ経験あり React Native
を product 投入中 シン・ ゴジラこれから 世界樹の迷宮 5 もこれから : janus_wel : januswel
None
LT のゴー ル before React を使ってアプリを作れる after React Native を使ってアプリを作りたくなる
※ 時間がないのでかけあしです ※ 実際に作る際に必要になるだろう資料は最後に紹介します
React Native ? Facebook 製モバイルアプリ用フレー ムワー ク 今年 4 月に
Windows10, Tizen 対応を発表 Microsoft と Samsung を巻きこんで https://techcrunch.com/2016/04/13/facebooks-react- native-open-source-project-gets-backing-from- microsoft-and-samsung/ 要するに本気 最近安定しつつ、 こなれてきている
React Native ? 2 週間ていどで新バー ジョンがリリー スされている バー ジョン リリー
ス日 0.31.0 08/05 0.30.0 07/24 0.29.0 07/06 少しずれることもある 使えるコンポー ネントが増えたり ow のバー ジョンがあがって 型チェックできる領域が増えたりする
React Native のうれしい点
Learn once, write anywhere React の考え方でモバイルアプリを作成できる JSX ・ 仮想 DOM
でビュー を記述 コンポー ネント指向 CSS の感覚でコンポー ネントを配置できる exbox でマルチデバイス対応もばっちり position + top | bottom + left | right も問題なし ux 系ライブラリー もそのまま使える ow による型チェックにも対応
// ロゴコンポー ネントの実装 import React from 'react' import { Image,StyleSheet,Text,View
} from 'react-native' const styles = StyleSheet.create({ container: { flexDirection: 'row', alignItems: 'center', padding: 32, }, text: { fontSize: 32, }, }) export default class Logo extends React.Component { render() { return ( <View style={styles.container}> <Image source={{uri: 'icon'}} /> <Text style={styles.text}> 東京 Node 学園 {this.props.classes} 時限目 </Text> </View> ) ) }
開発速度が速い 再コンパイル不要 ネイティブ開発と違いソー スを書き換えても再コンパイ ルが走らない 専用 bundler が該当箇所をバンドルしなおすだけ Universal JS
な npm の資産は使える !! ネイティブ API を知らなくてもなんとかなる 最近公式ドキュメントが丁寧になってきた ネイティブ側のドキュメントも参考になる
デバイスの機能が使える ブリッジ経由でネイティブの機能を呼び出せる カメラ Bluetooth 位置情報 加速度センサー etc... たいていの機能は標準サポー トもしくは定番がある
ブリッジ ? React Native では JavaScript からネイティブを、 ネイティブから JavaScript を、
ブリッジ経由で相互に呼び出し可能 標準提供の機能・ コンポー ネントはほとんどがネイテ ィブコー ドを呼び出している おかげで実行速度がボトルネックになりにくい
ブリッジの詳細については… Bridging in React Native http://tadeuzagallo.com/blog/react-native-bridge/ Facebook の中のひとによるブリッジの解説記事 [ 翻訳]
Bridging in React Native http://qiita.com/janus_wel/items/93de843cc224337 0fce4 ↑ 日本語訳 Objective-C の知識も必要なのでじっくりどうぞ
マルチプラットフォー ム import MyPackage from './my-package' このように書くとプラットフォー ムごとに適切なファ イルを読んでくれる プラットフォー
ム ファイル名 iOS ./my-package.ios.js Android ./my-package.android.js iOS では <TabBarIOS> を、 Android では <ToolBarAndroid> を使うといったことが可能
まとめ React Native は 1. ほぼ React そのままなので学習コストが低い 2. コンパイル不要
& 既存資産使用で開発速度が速い 3. ブリッジのおかげでデバイスの機能を使える 実行速度が担保されているので UI に影響が出に くい 4. 拡張子で切り分けることでマルチプラットフォー ム対応
その他、 参考になる資料
React Native 公式ドキュメント https://facebook.github.io/react-native/docs/getting- started.html まず真っ先に確認すべき資料 1. Getting Started 2.
Tutorial 3. コンポー ネント一覧を眺めつつやりたいことのイ メー ジをつかむ
React Native Non-React Tips http://qiita.com/janus_wel/items/d3c5b695015cb54344ff はじめるにあたって必要な React 以外の知識詰め合わせ React Native
で development, staging, production など環境を切り替える http://qiita.com/janus_wel/items/750ffd1ae912e67d7df8 Bitrise と DeployGate で React Native アプリの評価 環境を構築する http://qiita.com/janus_wel/items/83996325920f62a684eb ステー ジング環境アプリの配布自動化
マルチプラットフォー ム時代の JavaScript x React 戦略 https://speakerdeck.com/januswel/marutipuratutohuomushi- dai-false-javascript-x-react-zhan-lue マルチプラットフォー ム対応するならもやっと考えたいこと
React Native 製アプリ https://github.com/builderscon/session-timer/ Builderscon session timer
謝辞 power-assert React Native 対応 https://twitter.com/t_wada/status/748731657478287360 翻訳時に textlint https://textlint.github.io/ スライド作成に
Marp https://yhatt.github.io/marp/