MVVMパターンのドキュメントを読んで重要なものをメモしとこう。下記がどの程度WinRT+XAMLで使えるのかわからないが。
- MVVMはXAML系のために生まれたMVC系パターンである。
- XAML系ライブラリでアプリを作ると自然とMVVMパターンとなるように制約が設けられている。制約をきちんと把握しておく。
- XAMLでLook&Feelのレイアウトする。コードでレイアウトしない。
- 状態で「Look&Feel」が変化するものもすべてXAMLで記述する。そのようなものはすべてXAMLで記述できる。
- Model・View・ViewModelは疎結合を保つようにデザインする。相互依存は避ける。相互依存を避ける手段としてはデータバインド,interface,observer,command,behavior,messengerなどがある。
- XAMLではViewの状態管理をする必要がある。状態管理はViewModelで行う。
- Viewの状態管理だけに必要なデータはModelには持たせないようにする。