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
Expoによるアプリ開発の現在地とReact Server Componentsが切り開く未来
Search
Yuku Kotani
March 06, 2025
Programming
3
490
Expoによるアプリ開発の現在地とReact Server Componentsが切り開く未来
Yuku Kotani
March 06, 2025
Tweet
Share
More Decks by Yuku Kotani
See All by Yuku Kotani
AI Coding Agent Enablement in TypeScript
yukukotani
18
9.7k
AI Coding Agent Enablement - エージェントを自走させよう
yukukotani
14
7.2k
React 19でお手軽にCSS-in-JSを自作する
yukukotani
5
780
僕が思い描くTypeScriptの未来を勝手に先取りする
yukukotani
12
3.2k
Web技術を駆使してユーザーの画面を「録画」する
yukukotani
14
7.7k
Capacitor製のWebViewアプリからReact Native製のハイブリッドアプリへ
yukukotani
5
1.6k
Real World Type Puzzle and Code Generation
yukukotani
4
940
Kuma UI が提唱する Hybrid Approach CSS-in-JS の仕組み
yukukotani
2
570
GraphQLスキーマ設計の勘所
yukukotani
42
18k
Other Decks in Programming
See All in Programming
プロダクト志向ってなんなんだろうね
righttouch
PRO
0
170
ふつうの技術スタックでアート作品を作ってみる
akira888
0
170
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
47
31k
AIプログラマーDevinは PHPerの夢を見るか?
shinyasaita
1
170
DroidKnights 2025 - 다양한 스크롤 뷰에서의 영상 재생
gaeun5744
3
330
明示と暗黙 ー PHPとGoの インターフェイスの違いを知る
shimabox
2
380
Java on Azure で LangGraph!
kohei3110
0
170
GoのGenericsによるslice操作との付き合い方
syumai
3
690
Modern Angular with Signals and Signal Store:New Rules for Your Architecture @enterJS Advanced Angular Day 2025
manfredsteyer
PRO
0
140
すべてのコンテキストを、 ユーザー価値に変える
applism118
2
930
Result型で“失敗”を型にするPHPコードの書き方
kajitack
4
510
なぜ適用するか、移行して理解するClean Architecture 〜構造を超えて設計を継承する〜 / Why Apply, Migrate and Understand Clean Architecture - Inherit Design Beyond Structure
seike460
PRO
1
700
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Documentation Writing (for coders)
carmenintech
72
4.9k
VelocityConf: Rendering Performance Case Studies
addyosmani
331
24k
Done Done
chrislema
184
16k
Code Review Best Practice
trishagee
68
18k
It's Worth the Effort
3n
185
28k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
5
230
Transcript
Expo React Server Components によるアプリ開発の現在地と が切り開く未来 @yukukotani 2025/03/06 - React
Native開発最前線 @ Offers DeepDive
自己紹介 小谷 優空 - @yukukotani ・VP of Technology @ Ubie,
Inc. ・Student @ Univ. Tsukuba
話すこと Expoでの開発の今と未来をざっくり紹介。技術的な詳細には踏み込まない ・Expo(React Native)での開発って今どんな感じ? ・これからどうなっていく? 技術的詳細もうちょっと書いてます
目次 1. Expo開発フロー概観 2. RSCによる未来 3. まとめ
Expoって? React Nativeでの開発をめっちゃ楽にしてくれるメタフレームワーク Reactに対するNext.jsみたいなもの
Expoによる開発フロー コーディング、ビルド、デプロイの3ステップで見ていく
コーディング
シンプルにReactで書くだけ
ネイティブUIを描画 Android iOS
アプリでパス・・・?
File Based Routing できる /app/about.tsx
ネイティブ処理もJSから
Web開発と似た感覚!
Web開発と特に異なるところ ・スタック前提の画面設計が必要(生きてる画面に別画面が重なってくる) ・DOMやCSSはそのまま使えない
ビルド
JSのビルドはExpoがやってくれる Metroというバンドラが組み込まれていて、勝手にやってくれる Next.jsがWebpack/Turbopackを持ってるのと同じ
iOS, Androidのコードどこにある?
Continuous Native Generation (CNG) iOS, Android のコードや設定を丸ごと自動生成する仕組み https://zenn.dev/woodstock_tech/articles/293a5c1d062ec6 .gitignoreできちゃう!
ネイティブコードがあってもビルドがめんどい・・・ CIにXCode環境を準備したり、、、 めちゃくちゃ遅いからキャッシュしたり、、、
EAS Build Expo公式のクラウドサービスでビルドしてくれる アプリビルドに最適化された環境になってるので、小難しいことをやらなくて済む
デプロイ
ストア審査に出すのもダルい・・・ EAS Buildからビルド結果のバイナリをダウンロードできるけど・・・ Appleに証明書を登録したりなど、小難しいプロセスがたくさん
EAS Submit ストアへの提出までEASがワンストップでやってくれる 証明書などもマネージドになって楽ちん
EAS Update 画面の変更などはストア審査なしで出せる(OTA Update)
JSエンジンを持つReact Nativeだからできる JavaScriptで記述する部分は基本的にすべてOTA可能 アプリ設定変更やネイティブモジュールの追加はストア審査が必要
目次 1. Expo開発フロー概観 2. RSCによる未来 3. まとめ
従来のOTAアップデート モバイルアプリは独立したクライアントアプリケーション デプロイ時にEAS Updateサーバがクライアント実装を差し替える
Server-Driven UI サーバーサイドでUIの構成を決定し、クライアントはそれに従って描画する設計 Airbnb, Netflix などが採用している https://medium.com/airbnb-engineering/a-deep-dive- into-airbnbs-server-driven-ui-system-842244c5f5
Server-Driven UI 画面構成はAPIレスポンスでしかないので動的に変えられる 実装を再デプロイしたり 管理画面で入稿したり
React Server Components RSCによって、サーバー側でコンポーネントを描画することができる →より自然に Server-Driven UIができる、Web開発に近いOTAの未来の形 サーバー側なので 動的に差し替えられる
目次 1. Expo開発フロー概観 2. RSCによる未来 3. まとめ
まとめ ・Expoの開発体験はクラウドサービスと統合され、Web開発者にも馴染みやすい ・RSCによってさらに統合が進身、ユニバーサルな開発体験が完成していく