質問: 周りにAndroidを作っている人が0人の者です。 Githubで色々なコードを見て勉強しているのですが、あることに気が付きました。 ほとんど、Activityに何も書かず、Fragmentを呼び出すだけに徹しているということです。 Activityに何も書かない実装方法が流行っているのでしょうか? とりあえず、↓のリポジトリを参考にしました。 https://github.com/DroidKaigi/conference-app-2018 https://github.com/googlesamples/android-architecture-components https://github.com/android10/Android-CleanArchitecture
回答: Androidについてのアーキテクチャパターンが洗練されていなかったときはActivityにビジネスロジックやView操作など何でも書いてしまい、数千行もあるFat Activity(God Activity)を作り出してしまうことがありました。 このようなActivityはメンテナンス性が極端に低いものとなりがちです。 そのため、最近ではActivityにはActivityにしかできない処理のみを記述し、それ以外の機能もそれぞれの責務毎にクラスやファンクションを作成し、メンテナンス性を高めようとしています。 詳しくはAndroid アプリ設計パターン入門を読むと分かりやすいと考えます。 また、MVVMやMVPなどのソフトウェアアーキテクチャパターンが色々とありますが、なぜ、そうすべきかについてはアジャイルソフトウェア開発の奥義で発表されたSOLIDの原則について理解を深めると良いと考えます。