Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
An introduction to React Native
Search
Eugene Oskin
January 20, 2018
Programming
1
91
An introduction to React Native
Eugene Oskin
January 20, 2018
Tweet
Share
More Decks by Eugene Oskin
See All by Eugene Oskin
REST API. Django, Ruby on Rails, Play! Framework
evgeneoskin
0
88
Introduction to gRPC
evgeneoskin
0
97
GrailInventory – Advanced Backend Development
evgeneoskin
0
35
Bracing Calculator
evgeneoskin
1
66
emotional intelligence, part 2
evgeneoskin
0
38
Office temperature
evgeneoskin
0
33
Parse platform
evgeneoskin
0
100
Hubot
evgeneoskin
0
50
An introduction to iOS development
evgeneoskin
0
42
Other Decks in Programming
See All in Programming
Kotlin エンジニアへ送る:Swift 案件に参加させられる日に備えて~似てるけど色々違う Swift の仕様 / from Kotlin to Swift
lovee
1
260
Google Agent Development Kit でLINE Botを作ってみた
ymd65536
2
190
GoのGenericsによるslice操作との付き合い方
syumai
3
690
PHP 8.4の新機能「プロパティフック」から学ぶオブジェクト指向設計とリスコフの置換原則
kentaroutakeda
2
540
プロダクト志向なエンジニアがもう一歩先の価値を目指すために意識したこと
nealle
0
110
既存デザインを変更せずにタップ領域を広げる方法
tahia910
1
240
関数型まつりレポート for JuliaTokai #22
antimon2
0
150
GitHub Copilot and GitHub Codespaces Hands-on
ymd65536
1
120
XSLTで作るBrainfuck処理系
makki_d
0
210
Bytecode Manipulation 으로 생산성 높이기
bigstark
2
380
XP, Testing and ninja testing
m_seki
3
190
ASP.NETアプリケーションのモダナイズ インフラ編
tomokusaba
1
410
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Stop Working from a Prison Cell
hatefulcrawdad
270
20k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Building Applications with DynamoDB
mza
95
6.5k
Building an army of robots
kneath
306
45k
RailsConf 2023
tenderlove
30
1.1k
Typedesign – Prime Four
hannesfritz
42
2.7k
Unsuck your backbone
ammeep
671
58k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Music & Morning Musume
bryan
46
6.6k
KATA
mclloyd
29
14k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Transcript
React Native
None
History
What is React Native?
A framework for building native apps using React.
With React Native, you don't build an “HTML5 app”, or
a “hybrid app”.
You build a real mobile app by using the iOS
and Android fundamental UI building blocks.
You put those building blocks together using JavaScript and React.
None
Vocabulary • Component = React Component • Style ~ CSS
style • Bridge • View = iOS or Android View • RN = ReactNative
None
Under the hood
None
Under the hood JavaScript in JavaScriptCore (WebKit’s JS engine) Awesome
Native App Bridge
How to Develop it, plan A • Plain React Native
app ◦ It's a 2 native applications in Native IDE with the several React Native components ◦ Native knowledge is required
How to Develop it, plan B • Expo ◦ It
is limited, it's a general js project ◦ No native knowledge is required ◦ You can publish it as Standalone apps
iOS + tvOS
Podfile
The magic RCTRootView
Android
build.gradle
The magic ReactRootView
• With headless JS Run js in Android services
Use in existed projects
Toolkit • Xcode • Android Studio • Native tests •
Native libraries • Native layouts • VS Code • React • Babel • Storybook! • Jest • Expo (optional, but powerful)
Components
Existed Components • https://js.coach/react-native • http://native.directory/
Use *.android.js and *.ios.js Platform-dependent components
Platform API
Platform-depended styles
Is it mature?
Is it mature? • Navigation • Network • Animations •
Multitasking on iPad • Other platforms
Navigation React Native Navigation – Demo React Native Router flux
Both support Tabs, Drawers, Stack
Network Built-in fetch
Animations It works - in react style. Doc and Demo
Native Multitasking on iPad
Other platforms • macOS • Windows, Windows Phone, Xbox One
Compilation is complex Debugging is complex Knowledge base Research Components
Dark side
Light side Community Code base sharing, Reusable components Single language
for development, for most of the projects Integrations with existed Native Apps Documentation
None
Takeaways • React Native is Native • Light and Dark
sides • React Native is mature
Materials: • Under the hood of react native • React
Native Fundamentals Components: • JS coach • http://native.directory/ • React Native Router Flux References • Integration with existing apps • Headless JS in Android • Building Expo standalone apps • React Native Navigation doc