コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
check_circle
ユニット 4 へようこそ
ondemand_video
動画
省略可
ユニット 4 へようこそこのユニットでは、より多くのロジックと画面を備えたアプリを作成する際に考慮すべき重要なトピックについて説明します。このユニットでは、アプリ アーキテクチャ、アプリ内の異なる画面間のナビゲーション、アダプティブ レイアウトを取り上げます。
check_circle
アクティビティのライフサイクルのステージ
emoji_objects
コードラボ
この Codelab では、アクティビティのライフサイクルとロギングについて学習します。
check_circle
アプリ アーキテクチャの概要
ondemand_video
動画
省略可
Android アプリ開発の設計パターン、手法、ベスト プラクティスを使用して Android アプリを設計する方法を学習します。
check_circle
アーキテクチャ: UI レイヤ
ondemand_video
動画
省略可
この動画では、UI レイヤと、単方向データフローを使用して UI の状態を処理する方法について学習します。
check_circle
Compose での ViewModel と状態
emoji_objects
コードラボ
この Codelab では、アーキテクチャ コンポーネントのひとつである ViewModel の使用方法を学びます。構成が変更されるときにアプリの状態を保持するために、ViewModel を実装します。
check_circle
ViewModel をテストする単体テストを作成する
emoji_objects
コードラボ
ViewModel をテストして、アプリの正確性、機能の動作、ユーザビリティを検証する方法を学習します。
check_circle
演習: Dessert Clicker に ViewModel を追加する
emoji_objects
コードラボ
アプリに ViewModel を追加して、アクティビティからロジックを抽出する演習を行います。
check_circle
次のステップ
ondemand_video
動画
省略可
これでユニット 4 のパスウェイ 1 は完了です。アプリ開発の成功に向け、大きく前進しました。このパスウェイでは、Dessert Clicker アプリと Unscramble アプリの両方を作成し、アプリのライフサイクル、構成変更の処理、アプリ アーキテクチャについて学習しました。
クイズ
知識をテストして、「アーキテクチャ コンポーネント」バッジを獲得しましょう。
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"必要な情報がない"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"複雑すぎる / 手順が多すぎる"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"最新ではない"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"翻訳に関する問題"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"サンプル / コードに問題がある"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"その他"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"わかりやすい"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"問題の解決に役立った"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"その他"
}]
{}
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["必要な情報がない","missingTheInformationINeed","thumb-down"],["複雑すぎる / 手順が多すぎる","tooComplicatedTooManySteps","thumb-down"],["最新ではない","outOfDate","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["サンプル / コードに問題がある","samplesCodeIssue","thumb-down"],["その他","otherDown","thumb-down"]],[]]