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.9k
potatotips 27
chuganzy
0
74
Other Decks in Technology
See All in Technology
20260204_Midosuji_Tech
takuyay0ne
1
150
OCI Database Management サービス詳細
oracle4engineer
PRO
1
7.4k
レガシー共有バッチ基盤への挑戦 - SREドリブンなリアーキテクチャリングの取り組み
tatsukoni
0
210
今日から始めるAmazon Bedrock AgentCore
har1101
4
410
こんなところでも(地味に)活躍するImage Modeさんを知ってるかい?- Image Mode for OpenShift -
tsukaman
0
140
SREが向き合う大規模リアーキテクチャ 〜信頼性とアジリティの両立〜
zepprix
0
450
SREチームをどう作り、どう育てるか ― Findy横断SREのマネジメント
rvirus0817
0
230
ブロックテーマでサイトをリニューアルした話 / 2026-01-31 Kansai WordPress Meetup
torounit
0
460
会社紹介資料 / Sansan Company Profile
sansan33
PRO
15
400k
外部キー制約の知っておいて欲しいこと - RDBMSを正しく使うために必要なこと / FOREIGN KEY Night
soudai
PRO
12
5.4k
広告の効果検証を題材にした因果推論の精度検証について
zozotech
PRO
0
170
Greatest Disaster Hits in Web Performance
guaca
0
230
Featured
See All Featured
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
62
49k
Typedesign – Prime Four
hannesfritz
42
2.9k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
200
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
160
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Git: the NoSQL Database
bkeepers
PRO
432
66k
How STYLIGHT went responsive
nonsquared
100
6k
The browser strikes back
jonoalderson
0
370
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
94
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Why Our Code Smells
bkeepers
PRO
340
58k
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