Upgrade to Pro — share decks privately, control downloads, hide ads and more …

SwiftPMによるマルチモジュールのアプローチ 〜ウホーイ図鑑の場合〜 / multi_module_approach

42a6a049ac8f5265f31858a9509217fb?s=47 uhooi
February 22, 2022

SwiftPMによるマルチモジュールのアプローチ 〜ウホーイ図鑑の場合〜 / multi_module_approach

Mobile勉強会 Wantedly × チームラボ #4
https://connpass.com/event/237606/

## 参考リンク

- ウホーイ図鑑の `Package.swift`
https://github.com/uhooi/UhooiPicBook/blob/develop/Package.swift

42a6a049ac8f5265f31858a9509217fb?s=128

uhooi

February 22, 2022
Tweet

More Decks by uhooi

Other Decks in Programming

Transcript

  1. SwiftPM による マルチモジュールのアプローチ 〜 ウホーイ図鑑の場合 〜 2022.02.22(Tue) Mobile勉強会 Wantedly × チームラボ

    #4 @the_uhooi
  2. PICTURE BOOK MONSTER ORIGINAL 累計100万DL(予定) 主要画面数2

  3. 分け方 ・機能 × レイヤー メリット ・依存関係の強制 ・補完の最適化 ・差分ビルドによるビルド時間の短縮 一般的なマルチモジュール UI

    Domain Data 図鑑 UI Domain Data 設定
  4. 分け方 ・メインモジュール + ライブラリのラップ  + 横断的関心事(Logger など) 目的 ・ライブラリを Package.swift

    で管理したい ・Xcode プロジェクトをスッキリさせたい ウホーイ図鑑のマルチモジュール
  5. 公開モジュール 内部モジュール 外部ライブラリ ウホーイ図鑑のマルチモジュール構成(簡略) AppModule ImageLoader Logger MonstersRepository MonsterWidgets FirebaseSetup

    Firebase
  6. ・目的に応じてマルチモジュールのアプローチを
  変えてもいいと思う ・分け方は「機能単位(単体で使える)」と考えると  わかりやすい ・具体的な実装はウホーイ図鑑を参照してほしい まとめ

  7. Mobile app developer @uhooi @uhooi @the_uhooi