以下は全て誤解
ViewModel
ViewModelはバインドのためにある
ViewModelはUIの都合で存在する
ViewModelがバインドである
ViewModelはUIスレッドで動く
ViewModelにロジックは入れない
ViewModelは薄くなければならない
ViewModelはViewのModelである
Model
Model に INotifyPropertyChanged インターフェースを実装しなければならない
Modelメソッドの戻り値はvoidでなければならない
View
Viewにロジックを入れる
Viewに状態を持つ
MVVM
MVVMはMVCである
MVVMはバインドを使う
ViewModelにビジネスロジック Modelにデータ
MVVMは単方向データフロー