長年の運用で肥大化した、UIKitベースのiOSアプリを安全に分割していくための戦略 by Shimomura Kazumasa

iOSDC Japan 2023
レギュラートーク(20分)

長年の運用で肥大化した、UIKitベースのiOSアプリを安全に分割していくための戦略

_kzumu Shimomura Kazumasa _kzumu
4

プロジェクトの肥大化により差分ビルドの時間が伸びてしまいます。
私たちのチームはマイクロフレームワーク戦略でしたが、UI関連のフレームワークが肥大化してしまいました。

解決策として、フレームワーク分割が有効です。
差分ビルド対象のフレームワークが減り、ビルド時間が短縮します。
加えて、機能ごとにフレームワークを分けることで特定機能のミニアプリの配布が可能となります。
しかし、コンパイルが成功しても安心できません。
ランタイムクラッシュや参照の不備でリソースが見つけられない問題が生じます

本トークでは、安全なフレームワーク分割の手法を説明します。以下の項目を中心に話す予定です。

  • xibファイル内モジュール参照不整合の静的検査方法
  • SwiftSyntax、IBDecodableの使い方
  • CIでの静的検査と、Dangerを使ったPull Requestへの警告コメントの出し方