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
Swift Package Manager によるマルチモジュール構成
Search
Tomoki Kobayashi
September 10, 2021
Programming
3
1.8k
Swift Package Manager によるマルチモジュール構成
2021/9/10 に開催された「みそかつモバイル#1」での発表資料です
https://misokatsu-web.connpass.com/event/221035/
Tomoki Kobayashi
September 10, 2021
Tweet
Share
More Decks by Tomoki Kobayashi
See All by Tomoki Kobayashi
Skip Skip Run Run Run ♫
temoki
0
580
さようならRxSwift こんにちは*****
temoki
1
350
Androidで不安定なPlatform Viewsとの闘い
temoki
0
840
iOSパッケージマネージャー奮闘記 完結編
temoki
2
550
事業譲渡を受けたアプリとの統合で失敗、 そしてユーザーからの評価回復に至るまで
temoki
1
610
Apple Vision Proデベロッパラボに参加してきた
temoki
0
460
年末年始の成果、そして現状の紹介
temoki
0
200
Apple HIGのススメ
temoki
0
290
ChatGPTにSVGでお絵描きさせる
temoki
0
610
Other Decks in Programming
See All in Programming
Streamlitで実現できるようになったこと、実現してくれたこと
ayumu_yamaguchi
2
230
LLMは麻雀を知らなすぎるから俺が教育してやる
po3rin
2
1.3k
Android 16KBページサイズ対応をはじめからていねいに
mine2424
0
740
構造化・自動化・ガードレール - Vibe Coding実践記 -
tonegawa07
0
150
Vibe Codingの幻想を超えて-生成AIを現場で使えるようにするまでの泥臭い話.ai
fumiyakume
18
9.5k
リッチエディターを安全に開発・運用するために
unachang113
1
270
QA x AIエコシステム段階構築作戦
osu
0
210
Quality Gates in the Age of Agentic Coding
helmedeiros
PRO
1
110
Google I/O Extended Incheon 2025 ~ What's new in Android development tools
pluu
1
200
AIコーディングエージェント全社導入とセキュリティ対策
hikaruegashira
15
8.4k
Reactの歴史を振り返る
tutinoko
1
140
ご注文の差分はこちらですか? 〜 AWS CDK のいろいろな差分検出と安全なデプロイ
konokenj
4
710
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.5k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
A better future with KSS
kneath
238
17k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Balancing Empowerment & Direction
lara
1
510
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1k
Producing Creativity
orderedlist
PRO
346
40k
We Have a Design System, Now What?
morganepeng
53
7.7k
GitHub's CSS Performance
jonrohan
1031
460k
Transcript
!UFNPLJ 4XJGU1BDLBHF.BOBHFSʹΑΔ ϚϧνϞδϡʔϧߏ Έ͔ͦͭϞόΠϧ
5PNPLJ,PCBZBTIJ !UFNPLJ w גࣜձࣾελϝϯʢ໊ݹʣ w ΤϯδχΞϦϯάɾϚωʔδϟʔ w J1IPOF(ຊ্ͱಉ࣌ʹ J1IPOFΞϓϦ։ൃΛ࢝ΊΔ
w "OESPJE 'MVUUFSʹखΛग़͢
📖ΒΓදࢴͰݟ͚ͭΔֆຊ͞ΜΞϓϦ 'MVUUFSͰJ04"OESPJE8FCΞϓϦΛϦϦʔεʂ https://perali.hiraku.space/about
9DPEFͷϞδϡʔϧ
import UIKit import SwiftUI 👈ίϨ
ϞδϡʔϧΛ͚ΔϝϦοτɾσϝϦοτ w ✅ଞͷϞδϡʔϧͷެ։ൣғΛίϯτϩʔϧͰ͖Δ w ✅Ϟδϡʔϧ୯ҐͰͷϏϧυʹΑΓϏϧυ͕࣌ؒॖ͞ΕΔ w ❌దʹϞδϡʔϧΛׂ͢Δқ͕ߴ͍ w ❌ϞδϡʔϧؒΛૄ݁߹ʹ͢ΔͨΊͷநԽʹΑΓෳࡶ্͕͕͞Δ
ྫ ;PPϞδϡʔϧΛఆٛ
ྫ ;PPϞδϡʔϧΛ͏
9DPEFͷϚϧνϞδϡʔϧߏ
.VMUJ5BSHFUT 9DPEFϓϩδΣΫτͷதʹෳͷλʔήοτ
.VMUJ1SPKFDUT 9DPEFϫʔΫεϖʔεͷதʹෳͷ9DPEFϓϩδΣΫτ
9DPEF1SPKFDUϑΝΠϧͱͷ ಆ͍͕େมͳ͜ͱʹʜ
9DPEF1SPKFDUϑΝΠϧͱͷ ಆ͍͕େมͳ͜ͱʹʜ
🆕.VMUJ-PDBM4XJGU1BDLBHFT
🆕.VMUJ-PDBM4XJGU1BDLBHFT 9DPEFϓϩδΣΫτͷதʹϩʔΧϧཧͷ4XJGUύοέʔδΛෳஔ
.VMUJ-PDBM4XJGU1BDLBHFTߏͷ࡞Γํ ᶃΞϓϦ༻ͷ9DPEFϓϩδΣΫτΛ༻ҙ MyApp MyApp.xcodeproj MyApp
.VMUJ-PDBM4XJGU1BDLBHFTߏͷ࡞Γํ ᶄMJCSBSZλΠϓͷ4XJGUύοέʔδΛ࡞Δ MyApp MyApp.xcodeproj MyApp ModuleA mkdir
ModuleA cd $_ swift package init
.VMUJ-PDBM4XJGU1BDLBHFTߏͷ࡞Γํ ᶅύοέʔδͷσΟϨΫτϦΛ9DPEFͷ1SPKFDU/BWJHBUPSυϩοϓ MyApp MyApp.xcodeproj MyApp ModuleA ModuleA
.VMUJ-PDBM4XJGU1BDLBHFTߏͷ࡞Γํ ᶆՃͨ͠ύοέʔδΛΞϓϦͷϦϯΫରʹઃఆ͢Δ MyApp MyApp.xcodeproj MyApp ModuleA
.VMUJ-PDBM4XJGU1BDLBHFTߏͷ࡞Γํ ᶇύοέʔδؒͷґଘؔ1BDLBHFTXJGUʹఆٛ MyApp MyApp.xcodeproj MyApp ModuleA ModuleB ґଘ
✅Ϟδϡʔϧͷઃఆ1BDLBHFTXJGU 9DPEFϓϩδΣΫτϑΝΠϧʹൺͯѹతʹ؆ܿʹʂ ෳਓ։ൃͰͷίϯϑϦΫτͷۤ௧αϤφϥ👋
✅Ϟδϡʔϧ୯ҐͰͷܰྔͳ։ൃ 4XJGUύοέʔδͷΈ9DPEFͰ։͍ͯ։ൃ͢ΕϏϧυαΫαΫಈ͘ʂ
'"2ʢࢲ͕ࠔͬͯௐͨ͜ͱʣ
4XJGU6*ͷϓϨϏϡʔදࣔͰ͖·͔͢ʁ ✅Ͱ͖·͢ʂͨͩ͠4XJGU6*͕ར༻Ͱ͖Δ1MBUGPSNͷࢦఆ͕ඞਢɻ ·ͨɺϓϨϏϡʔ༻ʹ͏1SFWJFX$POUFOUʹ૬͢Δػೳ͕ͳͦ͞͏ɻ 9DPEF1SFWJFXΛ༻͢Δ߹ 4XJGU6*͕ར༻Ͱ͖Δ1MBUGPSN͕ඞਢ
ύοέʔδʹϦιʔεؚΊΒΕ·͔͢ʁ ✅Ͱ͖·͢ʂYDBTTFUT TUPSZCPBSE TUSJOHTͱ͍ͬͨҰൠతͳ ϦιʔεϑΝΠϧࣗಈతʹύοέʔδͷ#VOEMFʹಉࠝ͞Ε·͢ɻ ϩʔΧϥΠζɾϦιʔεΛؚΉ߹ EFGBVMU-PDBMJ[BUJPOͷઃఆΛʂ ͦͷଞͷϦιʔεϑΝΠϧ 5BSHFUʹ໌͍ࣔͯͩ͘͠͞
JG%(Ͱσόοά࣌ͷίʔυΛॻ͚·͔͢ʁ ✅ॻ͚·͢ʂಠࣗͷίϯύΠϧ࣌ϑϥά1BDLBHFTXJGUʹఆٛͰ͖·͢ɻ
ύοέʔδϏϧυ࣌ʹ4XJGU-JOUΛ࣮ߦ͍ͨ͠ʂ ❌Ͱ͖·ͤΜʂ w 9DPEFϓϩδΣΫτͷ#VJME1IBTF4DSJQU૬ͷΈ͕͋Γ·ͤΜ w 4DIFNFͷ#VJME1SF"DUJPOͰ9DPEFͰ-JOU݁ՌΛͰදࣔͰ͖·ͤΜ TXJGUMJOU fi YͷΈͳΒ0,ʣ
w ΞϓϦຊମϓϩδΣΫτͷϏϧυ࣌ʹҰׅνΣοΫ͢Δ͔͠ͳ͍ͷ͔ʁ
·ͱΊ
·ͱΊ w ΞϓϦ։ൃʹ͓͍ͯϩʔΧϧཧͷ4XJGUύοέʔδͰ ϚϧνϞδϡʔϧߏΛ࣮ݱͰ͖Δ w 9DPEFϓϩδΣΫτʹΑΔϚϧνϞδϡʔϧߏΑΓɺ 1BDLBHFTXJGUʹΑΓγϯϓϧʹཧͰ͖Δ w 9DPEFϓϩδΣΫτͱͷҧ͍ΛѲ͓ͯ͘͠ඞཁ͕͋Δ