何故か書きかけで放り投げた前編が妙に反響あったので、一応続きも書いておく。 UIのプログラムというのを、準静的に書く為だけに存在するViewModelという物を導入する事にして、現実の要求と準静的なUIのギャップをだいたい埋める事に成功した人類だが、2つほど問題が残った。 1. UIからViewModelへの通知の粒度のミスマッチ 2. GUIアプリでは非UIの機能を非同期で実装しなくてはいけないが、そことViewModelのマッピングでかつての動的なGUIと似た問題が発生してしまう まず1について。 MVVMにおいては、直接イベントはハンドリングせず、基本的なUIの変化はViewModelのフィールドの変化にマッピングする(かICommandにマップする)。 例えばテキストボックスに値を入れると、対応するViewModelのstring型のメンバ変数(のsetter)に値が入る。 この対
![AvalonからMVVM、そしてRxへ(その2): GUIプログラミングの哲学の歴史](https://cdn-ak-scissors.b.st-hatena.com/image/square/74e90599656ceadb00e4e45cf296cc44473e9e7e/height=288;version=1;width=512/https%3A%2F%2Fl-stat.livejournal.net%2Fimg%2Fsign.png)