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からNativeアプリへ ~スタートアップ企業における 「機能開発と...
Search
株式会社ビットキー / Bitkey Inc.
PRO
September 11, 2022
Technology
0
2.1k
React NativeからNativeアプリへ ~スタートアップ企業における 「機能開発と保守性担保」の両立への挑戦~
株式会社ビットキー / Bitkey Inc.
PRO
September 11, 2022
Tweet
Share
More Decks by 株式会社ビットキー / Bitkey Inc.
See All by 株式会社ビットキー / Bitkey Inc.
チームビルドのためのワークショップ設計/Workshop design for team building
bitkey
PRO
0
24
「職種に名前が付く、ということ」 / When a Role Gets a Name
bitkey
PRO
0
17
ゼロから始めるEnabling SRE〜Datadogへの戸惑いや敬遠を無くすためにやったこと〜
bitkey
PRO
0
16
「書く」より「任せる」! 生成AIでローコード自動テストの属人化を防ぐ! / Delegate, Don't Write! Preventing Silos in Low-Code Auto-Testing with Gen AI
bitkey
PRO
0
50
オフィスビルを監視しよう:フィジカル×デジタルにまたがるSLI/SLO設計と運用の難しさ / Monitoring Office Buildings: The Challenge of Physical-Digital SLI/SLO Design & Operation
bitkey
PRO
3
560
事例で学ぶ!B2B SaaSにおけるSREの実践例/SRE for B2B SaaS: A Real-World Case Study
bitkey
PRO
1
570
整頓のジレンマとの戦い〜Tidy First?で振り返る事業とキャリアの歩み〜/Fighting the tidiness dilemma〜Business and Career Milestones Reflected on in Tidy First?〜
bitkey
PRO
3
23k
遠隔で同時に4人教育!? 〜リモート新人の「孤立」を防ぐオンボーディング事例〜/Educating 4 people at the same time remotely!〜Onboarding Case Studies to Prevent “Isolation” of Remote Newcomers〜
bitkey
PRO
0
87
ファームウェアは土管になるべきか 翻訳機になるべきか/Should firmware be a clay pipe or a translator?
bitkey
PRO
0
73
Other Decks in Technology
See All in Technology
異業種出身エンジニアが気づいた、転向して十数年経っても変わらない自分の武器とは
macnekoayu
0
230
カミナシ社の『ID管理基盤』製品内製 - その意思決定背景と2年間の進化 #AWSUnicornDay / Kaminashi ID - The Big Whys
kaminashi
3
630
エキサイトブログの トップページを 段階的にリプレイスする
zsp2088dev
0
140
認知戦の理解と、市民としての対抗策
hogehuga
0
420
KiroでGameDay開催してみよう(準備編)
yuuuuuuu168
1
160
プロダクトの成長に合わせたアーキテクチャの段階的進化と成長痛、そして、ユニットエコノミクスの最適化
kakehashi
PRO
1
110
PRDの正しい使い方 ~AI時代にも効く思考・対話・成長ツールとして~
techtekt
PRO
0
100
モダンフロントエンド 開発研修
recruitengineers
PRO
8
5.5k
Goss: Faiss向けの新しい本番環境対応 Goバインディング #coefl_go_jp
bengo4com
1
1.4k
おやつは300円まで!の最適化を模索してみた
techtekt
PRO
0
200
「魔法少女まどか☆マギカ Magia Exedra」の必殺技演出を徹底解剖! -キャラクターの魅力を最大限にファンに届けるためのこだわり-
gree_tech
PRO
0
310
Yahoo!ニュースにおけるソフトウェア開発
lycorptech_jp
PRO
0
580
Featured
See All Featured
Bash Introduction
62gerente
614
210k
Documentation Writing (for coders)
carmenintech
73
5k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
Navigating Team Friction
lara
189
15k
Site-Speed That Sticks
csswizardry
10
800
Reflections from 52 weeks, 52 projects
jeffersonlam
351
21k
Mobile First: as difficult as doing things right
swwweet
224
9.9k
Making the Leap to Tech Lead
cromwellryan
134
9.5k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.8k
Transcript
3FBDU/BUJWF͔Β/BUJWFΞϓϦ dελʔτΞοϓاۀʹ͓͚Δ ʮػೳ։ൃͱอकੑ୲อʯͷཱ྆ͷઓd 4IPHP4BJUP
0VUMJOF 1. workhubʹ͍ͭͯ 2. ελʔτΞοϓʹ͓͚Δ ιϑτΣΞ։ൃʹٻΊΒΕΔͷ 3. ؇͔ͳNativeԽ 4. NativeԽʹΑΓ
ಘΒΕͨͷ / ͔ͬͨ͠
ࡈ౻ޛ 4IPHP4BJUP גࣜձࣾϫʔΫεΞϓϦέʔγϣϯζʹೖࣾ &$ύοέʔδͷ$.4ྖҬͷ։ൃͳͲΛ୲ ϏοτΩʔʹೖࣾ ϞόΠϧΞϓϦʮCJUMPDLʯͷ্ཱͪ͛ɾ࣮Λ୲ CJULFZQMBUGPSNνʔϜҟಈ إೝূٕज़Λར༻ͨ͠ΞϓϦέʔγϣϯ։ൃͳͲʹ
ܞΘΔ ϞόΠϧΞϓϦʮXPSLIVCʯͷ νʔϜϚωʔδϟʔͱͯ͠։ൃʹܞΘΔ
workhubʹ͍ͭͯ
1. workhubʹ͍ͭͯ
ελʔτΞοϓʹ͓͚Δ ιϑτΣΞ։ൃʹٻΊΒΕΔͷ
2.ɹελʔτΞοϓʹ͓͚ΔιϑτΣΞ։ൃʹٻΊΒΕΔͷ 0→1Λ͢ΔͨΊͷεϐʔυײΛ࣋ͬͨػೳ։ൃ 1→10ʹ͢Δʹ͋ͨͬͯาΈΛࢭΊͳ͍ͨΊͷอकੑͷ୲อ
ʮอकੑʯʹ͍ͭͯ ෆ۩߹ΛຒΊࠐΈʹ͘͘͢ΔͨΊͷͷ ෆ۩߹ൃੜ࣌ͷӨڹൣғΛ͔Γ͘͢͢ΔͨΊͷͷ ɹকདྷʹΘͨͬͯ҆શͳػೳ։ൃΛ͘͢͢͠Δ ܧଓతʹ߈ΊΔɾվળ͢ΔͨΊʹඞཁͳͷ ˠ 2.ɹελʔτΞοϓʹ͓͚ΔιϑτΣΞ։ൃʹٻΊΒΕΔͷ
bitlockApp workhubApp 2.ɹελʔτΞοϓʹ͓͚ΔιϑτΣΞ։ൃʹٻΊΒΕΔͷ
2.ɹελʔτΞοϓʹ͓͚ΔιϑτΣΞ։ൃʹٻΊΒΕΔͷ
͜ͷΞϓϦͷอकੑΛܧଓతʹҡ࣋͢ΔʹͲ͏ͨ͠ΒΑ͍͔ʁ 2.ɹελʔτΞοϓʹ͓͚ΔιϑτΣΞ։ൃʹٻΊΒΕΔͷ
/BUJWFԽΛߟҊͨͭ͠ͷཧ༝ ɾiOSUpdateͷैੑͷ՝ײ 2.ɹελʔτΞοϓʹ͓͚ΔιϑτΣΞ։ൃʹٻΊΒΕΔͷ
/BUJWFԽΛߟҊͨͭ͠ͷཧ༝ ɾiOSUpdateͷैੑͷ՝ײ ɾۃྗϥΠϒϥϦʹґଘ͠ͳ͍ٕज़ར༻ 2.ɹελʔτΞοϓʹ͓͚ΔιϑτΣΞ։ൃʹٻΊΒΕΔͷ
/BUJWFԽΛߟҊͨͭ͠ͷཧ༝ ɾiOSUpdateͷैੑͷ՝ײ ɾۃྗϥΠϒϥϦʹґଘ͠ͳ͍ٕज़ར༻ ɾBuild࣌ؒͷ͞ 2.ɹελʔτΞοϓʹ͓͚ΔιϑτΣΞ։ൃʹٻΊΒΕΔͷ
/BUJWFԽΛߟҊͨͭ͠ͷཧ༝ ɾiOSUpdateͷैੑͷ՝ײ ɾۃྗϥΠϒϥϦʹґଘ͠ͳ͍ٕज़ར༻ ɾBuild࣌ؒͷ͞ ɾAndroidΞϓϦͷLaunchʹ࣌ؒత༛༧͕͋ͬͨ 2.ɹελʔτΞοϓʹ͓͚ΔιϑτΣΞ։ൃʹٻΊΒΕΔͷ
XPSLIVC"QQͷ/BUJWFԽʹ͍ͭͯ બࢶ2ͭ 2.ɹελʔτΞοϓʹ͓͚ΔιϑτΣΞ։ൃʹٻΊΒΕΔͷ
XPSLIVC"QQͷ/BUJWFԽʹ͍ͭͯ બࢶ2ͭ ɾϑϧNativeͰ1͔ΒผΞϓϦͱͯ͠࡞Γ͢ 2.ɹελʔτΞοϓʹ͓͚ΔιϑτΣΞ։ൃʹٻΊΒΕΔͷ
XPSLIVC"QQͷ/BUJWFԽʹ͍ͭͯ બࢶ2ͭ ɾϑϧNativeͰ1͔ΒผΞϓϦͱͯ͠࡞Γ͢ ɾطଘReact NativeΞϓϦΛঃʑʹNativeԽ͢Δ 2.ɹελʔτΞοϓʹ͓͚ΔιϑτΣΞ։ൃʹٻΊΒΕΔͷ
࣌ͷνʔϜڥʹ͍ͭͯ ɾ։ൃରworkhubAppͷΈ ɾ։ൃϝϯόʔ3໊ XPSLIVC"QQͷ/BUJWFԽʹ͍ͭͯ 2.ɹελʔτΞοϓʹ͓͚ΔιϑτΣΞ։ൃʹٻΊΒΕΔͷ
؇͔ͳNativeԽ
/BUJWFԽͷํ๏ U ػ ೳ ։ ൃ ͷ ݴ ޠ
ׂ ߹ React Native Swift 3.ɹ ؇͔ͳNativeԽ
/BUJWFԽͷํ๏ U ػ ೳ ։ ൃ ͷ ݴ ޠ
ׂ ߹ React Native Swift शಘظ 3.ɹ ؇͔ͳNativeԽ
/BUJWFԽͷํ๏ U ػ ೳ ։ ൃ ͷ ݴ ޠ
ׂ ߹ React Native Swift शಘظ शख़ظ 3.ɹ ؇͔ͳNativeԽ
/BUJWFԽͷํ๏ 1. ϏδωεϩδοΫΛSwiftʹدͤΔ 1. ػೳͷগͳ͍ը໘ը໘͝ͱSwiftUIʹϦϓϨΠε 1. ػೳ͕ෳࡶͳը໘ίϯϙʔωϯτ୯ҐͰ SwiftUIʹϦϓϨΠε 3.ɹ
؇͔ͳNativeԽ
+BWB4DSJQU 3FBDU/BUJWF #SJEHF #VTJOFTT -PHJD 3.ɹ ؇͔ͳNativeԽ
+BWB4DSJQU axios 3.ɹ ؇͔ͳNativeԽ
+BWB4DSJQU 3FBDU/BUJWF #SJEHF #VTJOFTT -PHJD axios Alamofire 3.ɹ ؇͔ͳNativeԽ
+BWB4DSJQU 3FBDU /BUJWF #SJEHF 3$57JFX .BOBHFS 4XJGU6*7JFX 3.ɹ ؇͔ͳNativeԽ
workhubApp workhubApp 3.ɹ ؇͔ͳNativeԽ
NativeԽʹΑΓ ಘΒΕͨͷ / ͔ͬͨ͠
؇͔ͳ/BUJWFԽΛ͢Δ͜ͱͰಘΒΕͨͷ ɾBLENFCɾإೝࣝͳͲͷػೳ܈ΛReact NativeͷϥΠϒϥϦʹ ҰཔΒ࣮ͣ ɾϥΠϒϥϦͷSwiftPackageManagerҠߦ: 4ׂ΄Ͳ → ͜ΕʹΑΓBuild࣌ؒΛ20΄Ͳ·ͰʹॖΊΔ͜ͱʹޭ 4.ɹ
NativeԽʹΑΓಘΒΕͨͷ
/BUJWFԽΛਐΊ্͍ͯ͘Ͱোͱͳͬͨͷ ɾϥΠϒϥϦҠߦʹ͍ͯճΔσάϨͷةݥੑ ɾSwiftUIಛ༗ͷUI࡞ͷ͠͞ෆ۩߹ͷରॲ ɾSwiftUIͷΈͰ࡞Γਏ͍UI 4.ɹ NativeԽʹ͓͍͔ͯͬͨ͠
࣌ܥྻͰͷৼΓฦΓ SwiftUI औΓࠐΈ։࢝ 4.ɹ NativeԽʹΑΓಘΒΕͨͷ Bridgeύλʔϯ ࢼߦظ NativeԽઓུ ࿅Γ࢝Ί
৽ن։ൃΛ SwiftUIʹҠߦ طଘViewͷSwiftUI ஔ Concurrency ରԠ
ϓϩμΫτͱνʔϜʹ߹ͬͨख๏Λ࿅Δ͜ͱͰ ػೳ։ൃͱอकੑ୲อͷཱ྆ୡՄೳ 4.ɹ ·ͱΊ
͓Βͤ ҰॹʹੈͷதΛม͑Δ ϞόΠϧΞϓϦΛ࡞Γ·͠ΐ͏ʂ