Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
「React Nativeで自社サービスのiOS/Androidアプリをリプレイスした話」 か...
Search
Hiromasa Ohno
July 15, 2020
Programming
1
310
「React Nativeで自社サービスのiOS/Androidアプリをリプレイスした話」 から2年経った今何を思うのか/techplay-mobile-cross-platform-lt-2020-07-15
Hiromasa Ohno
July 15, 2020
Tweet
Share
More Decks by Hiromasa Ohno
See All by Hiromasa Ohno
テレワークデイズ浜松2019発表 ソニックガーデン大野 / Telework Days Hamamatsu 2019
pi_chan
0
140
React Nativeでアプリのアップデートが楽になる話
pi_chan
0
470
Other Decks in Programming
See All in Programming
Socio-Technical Evolution: Growing an Architecture and Its Organization for Fast Flow
cer
PRO
0
340
令和最新版Android Studioで化石デバイス向けアプリを作る
arkw
0
410
リリース時」テストから「デイリー実行」へ!開発マネージャが取り組んだ、レガシー自動テストのモダン化戦略
goataka
0
130
ID管理機能開発の裏側 高速にSaaS連携を実現したチームのAI活用編
atzzcokek
0
230
안드로이드 9년차 개발자, 프론트엔드 주니어로 커리어 리셋하기
maryang
1
110
マスタデータ問題、マイクロサービスでどう解くか
kts
0
100
C-Shared Buildで突破するAI Agent バックテストの壁
po3rin
0
390
【CA.ai #3】Google ADKを活用したAI Agent開発と運用知見
harappa80
0
310
ZOZOにおけるAI活用の現在 ~モバイルアプリ開発でのAI活用状況と事例~
zozotech
PRO
8
5.7k
20 years of Symfony, what's next?
fabpot
2
360
実は歴史的なアップデートだと思う AWS Interconnect - multicloud
maroon1st
0
170
WebRTC と Rust と8K 60fps
tnoho
2
2k
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.3k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.6k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
The Cost Of JavaScript in 2023
addyosmani
55
9.4k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
A designer walks into a library…
pauljervisheath
210
24k
Designing for Performance
lara
610
69k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.5k
Transcript
ʮReact NativeͰࣗࣾαʔϏεͷiOS/ AndroidΞϓϦΛϦϓϨΠεͨ͠ʯ ͔Β2ܦͬͨࠓԿΛࢥ͏ͷ͔ ˏTECH PLAY 2020/07/15 גࣜձࣾιχοΫΨʔσϯ େߒ
ࣗݾհ ✦ େߒʢͻΖ·͞ʣ ✦ 2015͔ΒιχοΫΨʔσϯ ✦ ϓϩάϥϚʔ / ސCTO ✦
Rails / iOSωΠςΟϒ ✦ ੩Ԭݝদࢢࡏॅ
ιχοΫΨʔσϯʹ͍ͭͯ ✦ डୗ։ൃத৺ɾࣗࣾαʔϏε ✦ ϓϩάϥϚʔΛத৺ʹࣾһ50໊΄Ͳ ✦ ೲͷͳ͍डୗ։ൃ ❖ όʔνϟϧCTO ❖
ۀϋοΫ ✦ ϦϞʔτϫʔΫ
Remotty
✦ 20173݄ɿ։ൃ։࢝ ✦ 20179݄ɿϦϦʔεʢچόʔδϣϯΛࠩ͠ସ͑ʣ ✦ 20184݄ɿϒϩάʹ·ͱΊͨ ✦ ↑↑2લ RemottyͷΞϓϦΛReact NativeͰ
None
✦ ྆OSͷωΠςΟϒ൛͕͋ͬͨ ✦ ϒϥβ൛ϝΠϯͷͨΊΞϓϦ༏ઌΊ ✦ ઐۀͰͳ͍ ✦ React NativeͰαΫͬͱͬͯΈΑ͏ ओ1ɿReact
Nativeબͷഎܠ ʢ˞2ʙ3લͷͰ͢ʣ
✦ ։ൃମݧɺྑ͍ʂ☺ ❖ UIΛએݴతʹॻ͚ͯΊͬͪΌྑ͍☺ ❖ Code PushͰͷϦϦʔεͱͬͯศར☺ ❖ JSON APIͷ݁ՌΛͦͷ··ѻָ͑ͯͪΜ☺
ओ2ɿReact Native͓͓ΉͶྑ͔ͬͨ ʢ˞2ʙ3લͷͰ͢ʣ
͋Ε͔Β2ޙͷࠓࢥ͏͜ͱ ʢ։ൃ͡Ί͔ͯΒ3ޙ…ʣ
✦ ։ൃମݧɺྑ͍ʂ☺ ❖ UIΛએݴతʹॻ͚ͯΊͬͪΌྑ͍☺ ❖ Code PushͰͷϦϦʔεͱͬͯศར☺ ❖ JSON APIͷ݁ՌΛͦͷ··ѻָ͑ͯͪΜ☺
։ൃΓָͪΜ ࣌ͱมΘΒͳ͍ؾ࣋ͪ
ϞόΠϧΞϓϦͷ໋॓
OS͕ਐԽ͢ΔͱΞϓϦ͕૬ରతʹѱ͘ͳΔ ✦ ͨͱ͑͜ΜͳରԠ͠·ͨ͠ ✦ iOS ❖ iPhone Xͷग़ݱʢSafeAreaͷߟྀ ✦ Android
❖ Google PlayͰͷ64bitରԠ
✦ OSʹै͢ΔʹReact NativeͷΞοϓσʔτ͕ඞਢ ✦ React NativeͷόʔδϣϯΛ্͛Δͱɺࢮ͵ ✦ ྫʣ ❖ 0.59ʹ͋͛ͨΒAndroidͷTextView͕όά͍ͬͯΔ
❖ →0.60ʹ͋͛ͨΒϏϧυͷΈ͕มΘΔ ❖ →ͬͱͨ͠Β࣮AndroidͷListView͕όάͬ…ʢҎԼུʣ ❖ 0.61ʹͨ͠ΒΑ͏͘ಈ͍ͨ Ξοϓσʔτܥ͕େมɾRNຊମฤ
✦ αΫοͱ࡞ΔͨΊɺ͑ͦ͏ͳϥΠϒϥϦ༻ ❖ OAuthɹ ❖ ը૾ϐοΧʔ/ϦαΠζ ❖ MentionઌબUI ✦ ͜Εͳ͔ͳ͔
❖ RNͷ࠷৽όʔδϣϯະରԠʢͦͦϝϯςࢭ·ͬͯΔ ‣ ผϥΠϒϥϦʹஔ͖͑ ‣ ϓϧϦΫ || fork Ξοϓσʔτܥ͕େมɾϥΠϒϥϦฤ
ֶͼ
RNͷ͚ͩϝϯςۀ͕૿͑Δ /BUJWF4%, ϥΠϒϥϦ ΞϓϦ 3FBDU/BUJWF ϥΠϒϥϦ ΞϓϦ /BUJWF4%, ωΠςΟϒΞϓϦ React
Native ΞϓϦ ✦ NativeͷਐԽʹ͏ϝϯς ✦ React NativeͷਐԽʹ͏ϝϯςΒ ※ Expo3લ͙Β͍ʹͪΒͬͱ৮ͬͯҎདྷͬͯ·ͤΜͷͰɺஅͰ͖·ͤΜ ✦ NativeͷਐԽʹ͏ϝϯς
✦ ϝϯςφϯε͢͠͞Λҡ࣋ ❖ ઐۀͰͳ͍ͳΒͳ͓͞Β ✦ ͜·ΊʹΞοϓσʔτ͠Α͏ ❖ ϓϥοτϑΥʔϜͷਐԽʹ߹Θͤͳ͍ ✦ ϥΠϒϥϦͷґଘΛݮΒͦ͏
❖ ಛʹୈࡾऀͷUIϥΠϒϥϦ… ϝϯςφϯεੑ > ։ൃମݧ
ࠓΔͳΒͲ͏͢Δʁ
※ ΞϓϦͷಛੑʹΑΔͷͰࢲ/Remottyͷ߹ͱ͍͏͜ͱͰ… ✦ ϝΠϯը໘ʹWebViewΛ༻͢Δ ✦ Push௨ͳͲҰ෦ͷػೳωΠςΟϒͰ࣮͢Δ ✦ AndroidͰ͋ΕPWAͰՄೳ ✦ Web։ൃͳͷͰɺ։ൃɾϦϦʔεָ͕ʢ1ຊԽʣ
✦ ωΠςΟϒ࣮ۃখͷͨΊɺϝϯςίετ͍ ωΠςΟϒ࣮ͷWebViewΞϓϦʹ͢Δ ↓
ͲΜͳ߹ʹ React NativeΛબͿ͔
✦ React Nativeͷಛ ❖ ։ൃମݧྑ͍ ❖ ೃછΈ͕͋ΔͰ͋Ζ͏JSͰͷ։ൃ ❖ ωΠςΟϒΞϓϦͷϓϥοτϑΥʔϜͷΈɾڥͷཧղ RNબͷϝϦοτґવͱͯ͋͠Δ
✦ ϑϧλΠϜͰऔΓΊΔ߹ ✦ νʔϜͷਓ͕ेͳ߹ ✦ ϥΠϒϥϦͷϝϯςΛ͍ͱΘͳ͍߹ ✦ ʢϑϨʔϜϫʔΫΛࣗͨͪͰͤΔ߹ʣ ܧଓͯ͠ϝϯςφϯεͰ͖Δମ੍
ʮReact NativeͰࣗࣾαʔϏεͷiOS/ AndroidΞϓϦΛϦϓϨΠεͨ͠ʯ ͔Β2ܦͬͨࠓԿΛࢥ͏ͷ͔ ˏTech Play 2020/07/15 גࣜձࣾιχοΫΨʔσϯ େߒ
͋Γ͕ͱ͏͍͟͝·ͨ͠ ࣭͋Εͥͻ͓ئ͍͠·͢
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ Twitter: @pi_cha_n Facebook: hiromasa.ohno େ ߒ ʘൃചத!!ʗ גࣜձࣾιχοΫΨʔσϯ