はじめに
この連載では共通化とモジュール分割について扱います。この話題においてQiitaで有名な記事のひとつが@MinoDrivenさんの単一責任原則で無責任な多目的クラスを爆殺するでしょう。この記事を未読の方はまずこちらを読むことをお勧めします。本連載では、この記事に書かれているような基礎的な事項については既知であることを前提に、どのようにすれば単一責任原則にそったモジュールの分割を行うことが出来るのかをなるべく 「場合による」という言葉に逃げずに なるべく 網羅的・理論的に 解説します。
いいね、ストックをよろしくお願いします。
対象読者
- 設計に興味のあるエンジニア
- 基礎的な設計原則について学んだものの、実際の場面でどのように応用すればいいのかが掴めないエンジニア
- ミクロな設計についての知識を増やしたい人
※この記事では、特定のメソッドをどのように作成するべきか、このクラスは複数の処理の間で共有するべきかといったミクロな視点での設計を行います。そのため、アプリケーション全体のマクロな設計については説明しません。例えば、Clean Architecture
やMVVM
といったキーワードにはまったく触れません。
※もしもあなたがゲームエンジニアで、マクロな設計に興味がある場合は、Unity設計入門という連載をぜひ読んでください。