MVVMのよくある誤解
・Modelはデータのみ。
-> Modelの仕事をViewModelが奪っている。
・ViewModelからネットワークアクセス
-> ネットワークアクセスはUIの仕事ではない。
・ViewModelはViewのデータを用意するだけ、
-> Viewにプログラムはない。
よって、
例)
・textbox入力のバリデーション(
・ボタンのイネーブル/ディセーブル
・メニューチェックマーク
・ModelからViewModel,Viewにアクセスする。
-> ModelがUIに依存している事になるのでUI処理とUI処理
・VVM ModelなしでViewとViewModelで構成する。
-> 間違いではないが、MVVMではない。
表示+入力 と それ以外は分離できるが、
・Modelのメソッドの戻り値は当然voidである。
-> voidの場合もあるし、戻り値を返す場合もある。設計による。
・Modelはステートフルである。
-> 場合による。