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
React Nativeではじめる ハイパフォーマンス スマホアプリ開発(GENIEE Edit)
Search
Tsubasa SEKIGUCHI
October 21, 2024
Programming
0
130
React Nativeではじめる ハイパフォーマンス スマホアプリ開発(GENIEE Edit)
base:
https://speakerdeck.com/tinykitten/react-nativedehazimeru-haipahuomansu-sumahoapurikai-fa
Tsubasa SEKIGUCHI
October 21, 2024
Tweet
Share
More Decks by Tsubasa SEKIGUCHI
See All by Tsubasa SEKIGUCHI
今日から使える AI駆動開発のすゝめ
tinykitten
1
72
Reactで始める リグレッションテスト概論
tinykitten
0
43
エンジニアでも捗る デザイナー的思考入門
tinykitten
1
1.3k
Gunma.web #55
tinykitten
0
240
AWS/GCPで始める 生成AI入門
tinykitten
0
160
Rustとtonicで始める gRPC入門(GENIEE Edit)
tinykitten
0
51
スモールスタートで始める フィードバック管理システム開発入門
tinykitten
0
300
Rustとtonicで始める gRPC再入門
tinykitten
0
1k
gRPCで始める ハイパフォーマンス タイプセーフウェブ開発
tinykitten
0
280
Other Decks in Programming
See All in Programming
Blazing Fast UI Development with Compose Hot Reload (Bangladesh KUG, October 2025)
zsmb
2
390
Cursorハンズオン実践!
eltociear
2
1.2k
Software Architecture
hschwentner
6
2.4k
Foundation Modelsを実装日本語学習アプリを作ってみた!
hypebeans
0
130
他言語経験者が Golangci-lint を最初のコーディングメンターにした話 / How Golangci-lint Became My First Coding Mentor: A Story from a Polyglot Programmer
uma31
0
470
React Nativeならぬ"Vue Native"が実現するかも?_新世代マルチプラットフォーム開発フレームワークのLynxとLynxのVue.js対応を追ってみよう_Vue Lynx
yut0naga1_fa
2
1.8k
Blazing Fast UI Development with Compose Hot Reload (droidcon London 2025)
zsmb
0
390
Developer Joy - The New Paradigm
hollycummins
1
380
NixOS + Kubernetesで構築する自宅サーバーのすべて
ichi_h3
0
1.2k
Go言語はstack overflowの夢を見るか?
logica0419
0
650
20251016_Rails News ~Rails 8.1の足音を聴く~
morimorihoge
3
860
TFLintカスタムプラグインで始める Terraformコード品質管理
bells17
2
480
Featured
See All Featured
It's Worth the Effort
3n
187
28k
Side Projects
sachag
455
43k
We Have a Design System, Now What?
morganepeng
53
7.8k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Keith and Marios Guide to Fast Websites
keithpitt
411
23k
The World Runs on Bad Software
bkeepers
PRO
72
11k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
Mobile First: as difficult as doing things right
swwweet
225
10k
Rails Girls Zürich Keynote
gr2m
95
14k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Leading Effective Engineering Teams in the AI Era
addyosmani
7
670
Transcript
React NativeͰ͡ΊΔ ϋΠύϑΥʔϚϯε εϚϗΞϓϦ։ൃ Head fi rst high-performance mobile app
development with React Native. LT 2024.10.22 Tsubasa SEKIGUCHI
TinyKitten Freelance frontend engineer
Tsubasa SEKIGUCHI Λڌͱ͢Δ܈അݝલڮࢢग़ ϑϦʔϥϯεϑϩϯτΤϯυΤϯδχΞ ͖ͬͨΜͱݺΕ͍ͯ·͢
ͿΓʹ໊ͷσβΠϯΛߋ৽͠·ͨ͠
NFCλά͕͋Γ·͢ ࠓண༻͍ͯ͠Δ໊ࡳͷ֓Ͷதԝ෦ʹNFCλάΛຒΊࠐΜͰ͍·͢ɻ ձࢀՃͷํNFCରԠεϚϗͰੋඇ͓ࢼ͍ͩ͘͠͞ɻ
TrainLCD ຊશࠃͷమಓ࿏ઢͰ͑Δ ৽ײ֮ͷφϏήʔγϣϯΞϓϦͰ͢ɻ
Smart StackରԠ ධ৴த
JavaScriptɺ͖Ͱ͔͢ʁ ͡Ίʹ
ͱʹ͔͘JavaScript͕͖ʜ ͦΜͳ͋ͳͨ JavaScriptͰεϚϗΞϓϦΛ࡞Γ·ͤΜ͔ʁ ͡Ίʹ
ͰɺͲ͏ͬͯʁ ͡Ίʹ
͡Ίʹ React Native
͡Ίʹ React Native ࠓճReact(Native)ͷ ࣮ܦݧΛ΄ͲੵΜͩ ݟΛڞ༗͍ͨ͠ͱࢥ͍·͢
3FBDU/BUJWFͬͯԿʁ React Native ͬͯԿʁ
React NativeͬͯԿʁ React Native ฏͨ͘ݴ͏ͱʜ UIߏஙͷͨΊͷ+4ϥΠϒϥϦ ʮReact.jsʯΛiOS/Android ͷωΠςΟϒػೳͱڞʹ ։ൃͰ͖ΔΑ͏ʹͨ͠ͷ
React Native ͞Βʹݴ͏ͱʜ iOS/Android͚ͩͰͳ͘ Web։ൃͰ͖ͨΓ͢Δ ͱ͍͑React Native for Web ݄ݱࡏ҆ఆͯ͑͠ΔΠϝʔδͳ͍Ͱ͕͢ʜ
React NativeͬͯԿʁ
React NativeΛ͏ͱԿ͕خ͍͔͠ ૣ Pros.
React.jsͷ͍͍ͱ͜Ζʜ React.jsͷࣝͰ ͍͍ͩͨͷ։ൃ͕Ͱ͖ΔͷͰ ֶशίετΛͳΔ͘Θͣʹ ։ൃΛ࢝ΊΒΕΔ React NativeΛ͏ͱԿ͕خ͍͔͠
Cordovaͱҧͬͯʜ ࣮ߦʹWebViewΛ༻ͤͣʹ JSX͕ωΠςΟϒ6*ʹม͞ΕΔͷͰ ҰൠతʹCordovaΑΓύϑΥʔϚϯε͕ྑ͍ React NativeΛ͏ͱԿ͕خ͍͔͠
ͪ͜ΒCordovaͱͦΕ΄ͲมΘΒͳ͍Ͱ͕͢ʜ JavaScript͚ͩͰ࣮ݱͰ͖ͳ͍ॲཧ Objective-C, Swift, JavaͰ࣮Մೳ React NativeΛ͏ͱԿ͕خ͍͔͠
લͷεϥΠυͱ͔ͿΓ·͕͢ React NativeʹରԠ͍ͯ͠ͳ͍ ωΠςΟϒػೳϒϦοδ͢Ε ։ൃͰ͖Δ e.g. Apple WatchΞϓϦΟδΣοτͳͲʜ TrainLCDͷ"QQMF8BUDIରԠ React
NativeΛ͏ͱԿ͕خ͍͔͠
ͬͺΓ͋Γ·͢ Cons. React NativeۜͷؙͰͳ͍
ͨΓલ͚ͩͲͪΐͬͱ௧͍ʜ ΓJavaScriptͳͷͰ SwiftJavaͱൺΔͱݴޠ༷͕ශऑ Ϛγʹ͢ΔͨΊʹTypeScript͍͖ͬͯ·͠ΐ͏ React NativeۜͷؙͰͳ͍
͍͍ͩͨExpo(ޙड़ Ͱे։ൃͰ͖·͕͢ طଘϥΠϒϥϦ͕ෆेͩͬͨΓ ͦͦଘࡏ͠ͳ͍ͱ͖ ωΠςΟϒಠ࣮͕ࣗඞཁ SwiftΛReact NativeͷωΠςΟϒϞδϡʔϧʹ͏ͱ͖ Objective-C͔ΒϒϦοδ͢Δඞཁ͕͋Δ React NativeۜͷؙͰͳ͍
جຊతʹ৺͢Δඞཁͳ͍ͱࢥ͍·͕͢ ωΠςΟϒ(Swift, KotlinͳͲ)Ͱ։ൃͨ͠߹ͱൺͯ ύϑΥʔϚϯε͕ѱ͔ͬͨΓ ΞϓϦͷDLαΠζ͕େ͖͘ͳΔ͜ͱ͕͋Δ React NativeۜͷؙͰͳ͍
͔ͬΔ͖ΤίγεςϜ React.js༝དྷͷॆ࣮ͨ͠ ΤίγεςϜ
͔ͬΔ͖ΤίγεςϜ Expo ͍͍͓ͩͨੈʹͳΓ·͢ ৭ʑͳReact Native͚ϥΠϒϥϦΛOSSͰ։ൃɾެ։ ϫʔΫϑϩʔʹΑͬͯɺQRίʔυͰ։ൃͨ͠ΞϓϦΛ ىಈͰ͖·͢
͔ͬΔ͖ΤίγεςϜ React Navigation ϧʔςΟϯάͱφϏήʔγϣϯͷϥΠϒϥϦ ͍͍ͩͨ͜Ε͕React NativeͰͷσϑΝΫτελϯμʔυ React NativeͰͷReact RouterͷΑ͏ͳଘࡏ
͔ͬΔ͖ΤίγεςϜ Fastlane React.jsReact NativeʹݶͬͨOSSͰͳ͍Ͱ͢ ΞϓϦͷϏϧυTestFlight/Google Play/App DistributionͳͲͷ σϓϩΠΛࣗಈԽͰ͖·͢🚀
ྨࣅϑϨʔϜϫʔΫ React NativeҎ֎ͷ ྨࣅϑϨʔϜϫʔΫ
ྨࣅϑϨʔϜϫʔΫ Flutter Dartͱ͍͏Java/C#ϥΠΫͷݴޠΛͬͯهड़ FlutterWebViewͳ͠Ͱಈ͖·͢ JavaܥͷΩϟϦΞΛੵΜͰ͍ΔਓͳΒ React NativeΑΓFlutterͷ΄͏͕ͱ͖͍͔ͬͭ͢
·ͱΊ - React.jsͰωΠςΟϒΞϓϦΛ։ൃͰ͖Δ - ͦͷଞωΠςΟϒݴޠͰ֦ுՄೳ - React NativeҎ֎ͷબࢶ͋Δ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ Thank you for listening! LT 2024.10.22 Tsubasa SEKIGUCHI