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
10k
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
44
Other Decks in Technology
See All in Technology
なぜ今 AI Agent なのか _近藤憲児
kenjikondobai
4
1.3k
サイバーセキュリティと認知バイアス:対策の隙を埋める心理学的アプローチ
shumei_ito
0
380
初心者向けAWS Securityの勉強会mini Security-JAWSを9ヶ月ぐらい実施してきての近況
cmusudakeisuke
0
120
B2B SaaSから見た最近のC#/.NETの進化
sansantech
PRO
0
720
開発生産性を上げながらビジネスも30倍成長させてきたチームの姿
kamina_zzz
2
1.7k
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
2
590
Amazon CloudWatch Network Monitor のススメ
yuki_ink
1
200
AWS Lambda のトラブルシュートをしていて思うこと
kazzpapa3
2
170
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
28
12k
BLADE: An Attempt to Automate Penetration Testing Using Autonomous AI Agents
bbrbbq
0
290
Terraform CI/CD パイプラインにおける AWS CodeCommit の代替手段
hiyanger
1
240
【若手エンジニア応援LT会】ソフトウェアを学んできた私がインフラエンジニアを目指した理由
kazushi_ohata
0
150
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
38
7.1k
GitHub's CSS Performance
jonrohan
1030
460k
KATA
mclloyd
29
14k
Happy Clients
brianwarren
98
6.7k
Navigating Team Friction
lara
183
14k
Raft: Consensus for Rubyists
vanstee
136
6.6k
Six Lessons from altMBA
skipperchong
27
3.5k
What's in a price? How to price your products and services
michaelherold
243
12k
Ruby is Unlike a Banana
tanoku
97
11k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
27
4.3k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
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