Clean Architectureとは Clean Architecture(クリーンアーキテクチャ)とは,レイヤに内側と外側の関係性を持たせるアーキテクチャである. 「外側のレイヤは内側のレイヤだけに依存する」というルールを守ることによって,アプリケーションから技術を分離することが目的である. 上の図で提案されているレイヤ構造をもとにしてpackage構成に落とし込んだものが以下の図である. ここで,実線は依存,点線は実装を表している. このpackage構成について,サンプルコード付きの解説をここでしているので,もし興味があれば読んでください. しかし,このpackage構成では次のような問題がある. 1. データの整合性を保つために複数モデルを扱うような処理はどこに置くのか? 2. ドメインモデルに持たせるべきではない処理はどこに置くのか? それぞれ,詳しく説明していく. データの