このプロジェクトについて
Android Architecture Samples は、Google が管理する Android サンプルアプリのコレクションで、さまざまなアーキテクチャ手法を示しています。リポジトリの各ブランチには、同じ TODO アプリが少しずつ異なる実装で含まれており、パターンを並べて比較しやすくなっています。
現在のブランチは、最新の構成を示しています。
- ユーザーインターフェースは Jetpack Compose で構築。
- Navigation Compose を使用したシングルアクティビティアーキテクチャ。
- Compose 画面(View)と、画面または機能ごとの ViewModel を持つプレゼンテーション層。
- Flow と Kotlin コルーチンを使用した非同期処理によるリアクティブ UI。
- リポジトリと 2 つのデータソース(ローカルの Room データベースとフェイクリモートソース)を持つデータ層。
- 開発とテストを容易にするための mock と prod の 2 つのプロダクトフレーバー。
- エミュレータまたはデバイスで実行できる共有テストを含む、単体テスト、統合テスト、エンドツーエンドテストのコレクション。
- Hilt による依存性注入。
このプロジェクトは、すぐに理解できるほどシンプルでありながら、難しい設計判断やテストシナリオを示すのに十分複雑なため、意図的に TODO アプリを使用しています。README には、このプロジェクトが何でないかが明確に記載されています。テンプレートではない(代わりに Architecture Templates リポジトリが推奨される)、UI や Material Design のサンプルではない(Compose Samples が推奨される)、ネットワーキングや認証を備えた本番アプリではない(Now in Android が推奨される)、ということです。
このプロジェクトは、テスト可能で保守しやすいアプリ構造を求める中級者や初心者、そしてクイックリファレンスを求める上級者を対象としています。サンプルを使用するには、リポジトリをクローンし、サンプルブランチをチェックアウトして、Android Studio でルートディレクトリを開きます。コードは Apache 2.0 ライセンスの下で提供され、著作権は Google に帰属します。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.