はじめに

完了

Model-View-ViewModel (MVVM) パターンは、"ソフトウェアの設計パターン" です。 設計パターンとは、アプリケーションのコードをよりよくしたり、より一貫性のあるものにしたりするのに役立つ、規則とテンプレートのセットです。 MVVM パターンを使うと、アプリの動作ロジックと、ユーザー インターフェイスをレンダリングするコードの分離を、単体テストをサポートするような方法で実現できます。

シナリオ例

あなたの会社は人事部門向けの管理ソフトウェアを制作しているとします。 そのソフトウェアは、会社の従業員についての詳細を管理および確認するために使われます。 既存のシステムは Web ベースです。 あなたは、Web システムで使われているものと同じバックエンド API で使うことができるモバイル アプリの作成を依頼されました。 バックエンド API と Web フロントエンドは単体テストで完全にカバーされていることがわかっています。 また、あなたはモバイル アプリに対しても標準を維持したい考えています。 最大限のテスト容易性を備えたモバイル アプリの設計には、MVVM パターンが役立つと聞いたことがあるので、あなたはこれを試してみるつもりです。

MVVM 自体は、多くのフレームワークやプログラミング ツールキットの基になっている設計パターンです。 また、それらのフレームワークのほとんどでは、MVVM で単体テストが促進されるのに役立つ、ナビゲーションやメッセージの抽象化のような他の機能も提供されています。 各フレームワークはその実装によってかなり違うことがあるため、ここではパターンの基本に着目します。

作業内容

このモジュールでは、MVVM パターンのパーツ、およびモデル、ビュー、ビューモデルの役割について説明します。 次に、UI ライブラリから (.NET MAUI 自体からも) 分離された方法で、アプリケーションの動作を処理するビューモデルのコードを記述します。

学習内容

このモジュールでは、次のことを行います。

  • Model-View-ViewModel パターンを使う条件を明らかにします。
  • ビューモデルを使ってビジュアルの動作を駆動します。
  • データ バインド可能なプロパティを使ってコードのテスト容易性を向上させます。