Clean Architectureを駆使していかにして既存コードに秩序をもたらしていったか、という話 by 栗山徹

iOSDC Japan 2019
レギュラートーク(30分)

Clean Architectureを駆使していかにして既存コードに秩序をもたらしていったか、という話

kotetu 栗山徹 kotetu

FatなViewControllerや変更に弱い作り、依存関係の複雑なコード・・などなど、いわゆる機能追加や仕様変更が容易でないコードに対して、どうしても手を入れなければいけなくなった場合にあなたはどう対応しますか?一気に作り変えるのが有効な場合もありますが、できるところから徐々にきれいにする、というスタンスでコツコツと改善に取り組むことも時には大切です。

本セッションでは、私が実際に業務で遭遇したコードを元に、主にシステムアーキテクチャの観点からClean Architectureを導入し変更に強くFatでない作りにするためにどのように実装を改善していったのかをご紹介します。

本セッションでは「最初からCleanな設計で実装する」ような話ではなく、「Cleanでないコードを様々な手法を用いてできるだけCleanになるよう改善していく」ことにフォーカスします。

本セッションが技術負債に直面しているiOSエンジニアの皆さんのお役に立てれば幸いです。

  • 発表内容アジェンダ
    1. Humble Objectの範囲を明確にする
    2. InteractorとUseCaseを作る
    3. protocolとDI
    4. UseCaseにテストを入れる
    5. staticメソッド入りクラスの段階的改善