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
11k
7
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
React Native Matsuri 2021
Takeru Chuganji
October 01, 2021
More Decks by Takeru Chuganji
See All by Takeru Chuganji
iOSDC 2017
chuganzy
5
4k
potatotips 27
chuganzy
0
95
Other Decks in Technology
See All in Technology
atproto spaces概要
yamarten
0
110
[RSJ26] Flow as Flow: Modeling Robot Velocity Fields as Probability Velocity Fields
keio_smilab
PRO
0
110
サーバー常駐型の 簡易障害調査AI エージェントを作ってみた話
masayoshi
1
310
Kiro Crew で始める マルチエージェント開発
miu_crescent
PRO
0
200
現場の暗黙知を継承するAIエージェント — 対話から生まれる長期記憶と Skills
atsukish
0
130
Point Cloud as a Foreign Language for Multi-modal Large Language Model
takmin
0
300
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
460
500名弱規模の組織のPythonプロジェクト(dbt) をどう管理するか?
hiracky16
0
360
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
20k
型落ちシンクライアント端末のPoEモジュールを自作したかった話
logica0419
0
510
APIセキュリティを組織で実現するには~注力する点と設計・実装に入れたい対策~
riiimparm
2
720
医療の現場を変革に挑戦した半年間の軌跡 - PythonとAIで現場を変える / From Code to Care
soudai
PRO
1
640
Featured
See All Featured
From π to Pie charts
rasagy
0
330
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
Into the Great Unknown - MozCon
thekraken
41
2.7k
It's Worth the Effort
3n
188
29k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
280
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Everyday Curiosity
cassininazir
0
300
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Raft: Consensus for Rubyists
vanstee
141
7.7k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
180
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