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 Matsuri 2021
Search
Takeru Chuganji
October 01, 2021
Technology
7
11k
React Native Matsuri 2021
Takeru Chuganji
October 01, 2021
Tweet
Share
More Decks by Takeru Chuganji
See All by Takeru Chuganji
iOSDC 2017
chuganzy
5
3.8k
potatotips 27
chuganzy
0
50
Other Decks in Technology
See All in Technology
クラウドネイティブ環境の脅威モデリング
kyohmizu
2
430
とあるEdTechベンチャーのシステム構成こだわりN選 / edtech-system
gotok365
5
360
インフラからSREへ
mirakui
19
6.8k
ユーザーコミュニティが海外スタートアップのDevRelを補完する瞬間
nagauta
1
200
地に足の付いた現実的な技術選定から魔力のある体験を得る『AIレシート読み取り機能』のケーススタディ / From Grounded Tech Choices to Magical UX: A Case Study of AI Receipt Scanning
moznion
5
1.8k
AOAI で AI アプリを開発する時にまず考えたいこと
mappie_kochi
1
750
非root化Androidスマホでも動く仮想マシンアプリを試してみた
arkw
0
130
激動の一年を通じて見えてきた「技術でリードする」ということ
ktr_0731
8
7.7k
正解のない未知(インボイス制度対応)をフルサイクル開発で乗り越える方法 / How to overcome the unknown invoice system with full cycle development
carta_engineering
0
130
Global Azure2025(GitHub Copilot ハンズオン)
tomokusaba
2
810
dbtとリバースETLでデータ連携の複雑さに立ち向かう
morookacube
0
960
MagicPodが描くAIエージェント戦略とソフトウェアテストの未来
magicpod
0
260
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
233
140k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2k
Writing Fast Ruby
sferik
628
61k
Fontdeck: Realign not Redesign
paulrobertlloyd
84
5.5k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Practical Orchestrator
shlominoach
187
11k
Raft: Consensus for Rubyists
vanstee
137
6.9k
The Invisible Side of Design
smashingmag
299
50k
How GitHub (no longer) Works
holman
314
140k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Transcript
Takeru Chuganji 2021/10/02 10:10‐10:50 ϝϧΧϦUS͕ϞόΠϧΞϓϦΛ React NativeͰ࡞Γ͍ͯ͠Δ React Native Matsuri
2021
Takeru Chuganji Software Engineer Mercari, Inc. chuganzy
None
None
Tokyo Japan Palo Alto / Portland / Boston United States
Tokyo Japan Palo Alto / Portland / Boston United States
ϑϧ ϦϞʔτԽ
$15 $15 $15 $15 $15 $15 $15 $15 $15 $15
$15 $15 What are you looking for? Category Home Chat My Page Sell Search 2014 2017 2017 2018 2021
$15 $15 $15 $15 $15 $15 $15 $15 $15 $15
$15 $15 What are you looking for? Category Home Chat My Page Sell Search 2014 2017 2017 2018 2021 Objective-C, Swift, Java Swift, Java, Kotlin, React Native
$15 $15 $15 $15 $15 $15 $15 $15 $15 $15
$15 $15 What are you looking for? Category Home Chat My Page Sell Search 2014 2017 2017 2018 2021 Objective-C, Swift, Java Swift, Java, Kotlin, React Native ৽͍͠ ίʔυϕʔε
Double 2017.4-7 RewriteϓϩδΣΫτ
Double 2017.4-7 RewriteϓϩδΣΫτ ϏδωεࢦඪΛ “ഒ”ʹ͢Δ
Double Rewriteͷഎܠ US൛ϝϧΧϦΛࠜຊ͔Βߟ͑͠ظؒͰ࣮ݱ͢Δ US։ൃνʔϜͷຊνʔϜ͔Βͷಠཱ ٕज़ελοΫΛ৽͠DXΛ্ͤ͞Δ US։ൃνʔϜͷΧϧνϟʔ࠶ߏஙɹͳͲ
ϗʔϜ ৄࡉ ϓϩϑΟʔϧ ϨϏϡʔ
Native Native React Native React Native
Double NativeͱReact NativeͷHybridΞϓϦ Native ϗʔϜ / ݕࡧ / ৄࡉ /
ग़ / ߪೖ / Σϒ / αΠϯΠϯ ͳͲ ϝΠϯ ಈత / ύϑΥʔϚϯε React Native ֤छઃఆ / ট / औҾ / Ҿ͖མͱ͠ / ݸਓೝূ ͳͲ αϒ ੩త / ಠཱ
Double React NativeΛ࠾༻ͨ͠ཧ༝ ୯७ʹNative͚ͩͰΔ ࣌ؒͱ ਓ͕Γͳ͔ͬͨ ։ൃظؒ 3ϲ݄ AndroidΤϯδχΞ 4ਓ
iOSΤϯδχΞ 4ਓ
Double React NativeΛ࠾༻ͨ͠ཧ༝ ୯७ʹNative͚ͩͰΔ ࣌ؒͱ ਓ͕Γͳ͔ͬͨ ։ൃظؒ 3ϲ݄ AndroidΤϯδχΞ 4ਓ
iOSΤϯδχΞ 4ਓ ͦͷଞͷJavaScriptॻ͚Δਓ 4-6ਓ
Double Ϗδωεͷ ϦϒϥϯσΟϯά Χʔτ ਅآೝূ Uberఏܞૹ ޙ͍ܾࡁɹͳͲ ʴ ଟͷABςετ ྲྀ௨૯ֹ
Double Ϗδωεͷ ϦϒϥϯσΟϯά Χʔτ ਅآೝূ Uberఏܞૹ ޙ͍ܾࡁɹͳͲ ʴ ଟͷABςετ ྲྀ௨૯ֹ
ଞʹ Γ͍ͨ͜ͱ͕ ࢁ΄Ͳʂ
Double Ұํ։ൃ໘Ͱ… ࠾༻ ߴΦϯϘʔσΟϯάίετ ߴίϛϡχέʔγϣϯίετ ߴϝϯςφϯείετ ߴϏϧυ࣌ؒ εϧʔϓοτʢงғؾʣ
Double Ұํ։ൃ໘Ͱ… ࠾༻ ߴΦϯϘʔσΟϯάίετ ߴίϛϡχέʔγϣϯίετ ߴϝϯςφϯείετ ߴϏϧυ࣌ؒ εϧʔϓοτʢงғؾʣ Scalabilityʹ ͋Γ
Double ঢ়گվળͷͨΊʹ 1ϓϥοτϑΥʔϜͷΈͰͷABςετ ڞ௨ϩδοΫͷNative ModuleԽ Πϯϑϥͷվળ ϏϧυͷߴԽ
Double ঢ়گվળͷͨΊʹ React NativeΞϓϦ ʹͨ͠Β͍͍ͷͰʁ ʢ2019/4ʣ 1ϓϥοτϑΥʔϜͷΈͰͷABςετ ڞ௨ϩδοΫͷNative ModuleԽ Πϯϑϥͷվળ
ϏϧυͷߴԽ
React NativeΞϓϦԽʹ͚ͯ React NativeΞϓϦԽ͢Δํ๏ Refactoring طଘΞϓϦͷReact NativeΛ૿͍ͯ͘͠ Rewrite ৽نͰΞϓϦΛॻ͖͢
React NativeΞϓϦԽʹ͚ͯ Refactoring vs Rewrite ن ϦεΫ ظؒ ෛ୲ қ
Refactoring த Rewrite ઈେ
React NativeΞϓϦԽʹ͚ͯ Refactoring vs Rewrite ن ϦεΫ ظؒ ෛ୲ қ
Refactoring த খ Rewrite ઈେ େ
React NativeΞϓϦԽʹ͚ͯ Refactoring vs Rewrite ن ϦεΫ ظؒ ෛ୲ қ
Refactoring த খ 3ʴ Rewrite ઈେ େ 1
React NativeΞϓϦԽʹ͚ͯ Refactoring vs Rewrite ن ϦεΫ ظؒ ෛ୲ қ
Refactoring த খ 3ʴ େ Rewrite ઈେ େ 1 த
React NativeΞϓϦԽʹ͚ͯ Refactoring vs Rewrite ن ϦεΫ ظؒ ෛ୲ қ
Refactoring த খ 3ʴ େ ߴ Rewrite ઈେ େ 1 த த
React NativeΞϓϦԽʹ͚ͯ Refactoring vs Rewrite ن ϦεΫ ظؒ ෛ୲ қ
Refactoring த খ 3ʴ େ ߴ Rewrite ઈେ େ 1 த த
React NativeΞϓϦԽʹ͚ͯ Refactoring vs Rewrite ن ϦεΫ ظؒ ෛ୲ қ
Refactoring த খ 3ʴ େ ߴ Rewrite ઈେ େ 1 த த
React NativeΞϓϦԽʹ͚ͯ Refactoring vs Rewrite ن ϦεΫ ظؒ ෛ୲ қ
Refactoring த খ 3ʴ େ ߴ Rewrite ઈେ େ 1 த த React Native ΞϓϦԽࣗମ͕ ΰʔϧͰͳ͍
React NativeΞϓϦԽʹ͚ͯ ͦͦͰ͖Δͷ͔ʁ ࣮ݧΞϓϦ։ൃ / ٕज़ݕূ React NativeΛ͍ͬͯΔձࣾͷώϠϦϯά React /
Native྆ํͷ๛ͳࣝ ҆શͳϦϦʔεϓϥϯχϯά ଞΫϩεϓϥοτϑΥʔϜٕज़ͱͷൺֱɹͳͲ
React NativeΞϓϦԽʹ͚ͯ Flutterͱͷൺֱ طʹReact Nativeͷ͕ࣝ͋Δ JavaScript ύϑΥʔϚϯεेʹΑ͘վળͷ༧ఆ͢Β͋Δ WebରԠ
Denali 2021.4- RewriteϓϩδΣΫτ
Denali 2021.4- RewriteϓϩδΣΫτ ΞϝϦΧͰ Ұ൪ߴ͍ࢁ
Denali ϞόΠϧνʔϜ৫ମ੍ iOS Android React Native Denali ʢRewriteʣ
Denali ϞόΠϧνʔϜ৫ମ੍ iOS Android React Native Denali ʢRewriteʣ
Denali ϞόΠϧνʔϜ৫ମ੍ iOS Android React Native Denali ʢRewriteʣ …
Denali ϞόΠϧνʔϜ৫ମ੍ iOS Android React Native Denali ʢRewriteʣ … ඞཁʹԠͯ͡
ੵۃతʹ ॿ͚߹͏
Denali ٕज़ελοΫ TypeScript Expo Redux Toolkit React Navigation fastlane Protocol
Buffers Sentry ͳͲ GitHub Actions
Denali লΛੜ͔ٕͨ͠ज़ํ “؆୯” ͳίʔυΛॻ͘ υΩϡϝϯτΛੵۃతʹΞοϓσʔτ ࣾษڧձʢDiscussionʣΛຖि։࠵ σβΠϯγεςϜΛશ໘దԠ
Denali εέʔϧ͍ͯ͠Δ։ൃ ݩWebνʔϜϝϯόʔ ݩAPIνʔϜϝϯόʔ ݱiOS / AndroidνʔϜϝϯόʔ NativeະܦݧΤϯδχΞ࠾༻ ۀҕୗɹͳͲͷίϯτϦϏϡʔτ εϧʔϓοτʢงғؾʣ
Denali ϑΣʔζ Phase 1 Phase 2 Phase 3 Phase 4
Denali ϑΣʔζ Phase 1 Phase 2 Phase 3 Phase 4
ج൫ ओཁը໘ νέοτચ͍ग़͠
Denali ϑΣʔζ Phase 1 Phase 2 Phase 3 Phase 4
ج൫ ओཁը໘ νέοτચ͍ग़͠ ඞਢػೳͷ ࣾςετ։࢝
Denali ϑΣʔζ Phase 1 Phase 2 Phase 3 Phase 4
ج൫ ओཁը໘ νέοτચ͍ग़͠ ඞਢػೳͷ ࣾςετ։࢝ αϒͷػೳ ݱߦΞϓϦͱͷࠩ ݱߦ։ൃͷ εϩʔμϯ
Denali ϑΣʔζ Phase 1 Phase 2 Phase 3 Phase 4
ج൫ ओཁը໘ νέοτચ͍ग़͠ ඞਢػೳͷ ࣾςετ։࢝ αϒͷػೳ ݱߦΞϓϦͱͷࠩ ݱߦ։ൃͷ εϩʔμϯ ϑΣʔζϦϦʔεͷ ։࢝ ෆ۩߹मਖ਼ 100%ϦϦʔεʂ
Denali ϑΣʔζ Phase 1 Phase 2 Phase 3 Phase 4
ج൫ ओཁը໘ νέοτચ͍ग़͠ ඞਢػೳͷ ࣾςετ։࢝ αϒͷػೳ ݱߦΞϓϦͱͷࠩ ݱߦ։ൃͷ εϩʔμϯ ϑΣʔζϦϦʔεͷ ։࢝ ෆ۩߹मਖ਼ 100%ϦϦʔεʂ
Denali ϑΣʔζ Phase 1 Phase 2 Phase 3 Phase 4
ج൫ ओཁը໘ νέοτચ͍ग़͠ ඞਢػೳͷ ࣾςετ։࢝ αϒͷػೳ ݱߦΞϓϦͱͷࠩ ݱߦ։ൃͷ εϩʔμϯ ϑΣʔζϦϦʔεͷ ։࢝ ෆ۩߹मਖ਼ 100%ϦϦʔεʂ νέοτ શମͷ60%ۙ͘ ফԽࡁΈ
2022 AndroidϩʔϧΞτ։࢝༧ఆʂ
React Nativeޙ ΤϯδχΞ৫ͱͯ͠ࢦ͢ઌ React NativeίϛϡχςΟͷߩݙ Ҿ͖ଓ͖ “ෑډ” Λ͘͢Δ “Pods”ʢʹখ͍͞νʔϜʣͰ Γ͍ͨ͜ͱΛͳΊΒ͔ʹ࣮ߦ͢Δ
ΤϯδχΞੵۃతʹΞΠσΟΞΛग़͢
React Nativeޙ ΤϯδχΞ৫ͱͯ͠ࢦ͢ઌ React NativeίϛϡχςΟͷߩݙ Ҿ͖ଓ͖ “ෑډ” Λ͘͢Δ “Pods”ʢʹখ͍͞νʔϜʣͰ Γ͍ͨ͜ͱΛͳΊΒ͔ʹ࣮ߦ͢Δ
ΤϯδχΞੵۃతʹΞΠσΟΞΛग़͢ ຖ͕ ϋοΧιϯঢ়ଶʹ ͳΔ!?
શ໘తɾੵۃతʹ࠾༻த
We are hiring! શΤϯδχΞੵۃ࠾༻த US / JPͱʹ࠾༻த React Native Engineer
iOS Engineer Android Engineer API EngineerɹͳͲͳͲ
None