SwiftUI による現実的な Clean Architecture の実践 by hokuron

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

SwiftUI による現実的な Clean Architecture の実践

hokuron hokuron hokuron
1

SwiftUI の登場で変わったことは、View やその周辺のデータの扱い方だけではありません。もっと大きな視野、アプリの設計面でも変化をもたらしてくれました。

このトークでは、Clean Architecture の本質を読み解き、SwiftUI と組み合わせた実装を紹介していきます。
まず、ドメイン駆動設計と絡めて Clean Architecture がどういったものかをおさらいをします。
続いて、実際にあった失敗事例を元に、 原案者の Uncle Bob が主張する Clean Architecture の本質に触れます。また、iOS アプリに Clean Architecture を適用する際に陥りがちな混乱や失敗のポイントを押さえます。
そして、SwiftUI を使った場合の Clean Architecture の実現方法を見ていきます。

"Massive View Controller" などと揶揄され、我々 iOS アプリ開発者は MVC を脱却すべく、さまざまな UI アーキテクチャを試行錯誤してきた歴史があります。そんな折、Clean Architecture にも注目が集まりました。Clean Architecture には、みなさんがすでに試してきたであろう MVC, MVP そして MVVM と同じ名前のオブジェクトが登場します。運の悪いことに、これがこのアーキテクチャの本質から目を逸らさせる一因にもなったようです。

SwiftUI が登場し、Clean Architecture をもう一度見直すチャンスがやってきました。
Controller が何なのか Presenter が誰なのかもう迷うことはなくなるのです。
そう、Clean Architecture of Truth on SwiftUI!