「Model View ViewModel」の版間の差分
ナビゲーションに移動
検索に移動
imported>Administrator 細 (MVVMをModel View ViewModelへ移動) |
imported>Administrator |
||
25行目: | 25行目: | ||
<references/> | <references/> | ||
== 外部リンク == | == 外部リンク == | ||
+ | |||
+ | {{stub}} |
2012年4月10日 (火) 06:49時点における版
Model View ViewModel(MVVM)とは、ユーザーインターフェイス(UI)を構築するためのデザインパターンのひとつである。
勉強中。
MVVMの構造
モデル(Model)
モデルはアプリケーションのデータを格納する部分。 ビジネスドメインの操作とデータからなるオブジェクトで、UIからは独立している。
MVCパターンのモデルと同じもの。
ビューモデル(ViewModel)
ビューモデルは操作とデータに対する純粋な表示を受け持つ。
ここで注意しなければならないのはビューモデルはUI自体ではないという点。たとえばビューモデルはボタンやスタイルなどの視覚的な機能を持たない。あくまでUIを抽象化したものである。さらにビューモデルはビューの参照を持たない。単体テストがよりいっそう捗る。
ビュー(View)
ビューは、ビューモデルから得た情報を表示したり、ビューモデルにコマンドと呼ばれる操作を送ることに特化する。
MVCパターンとの決定的な違いはこのビューであり、MVCではコントローラーがモデルとビューを結び付け、以降はビューとモデルが好き勝手にやっていたが、MVVMではビューが通信できるのはビューモデルだけである。例えるなら、MVCは直球な出会い系サイトで、MVVMは監視人がいて建前上は出会い系サイトではないSNSゲームサイトといったところか。