「Androidは電気羊の夢を見るか」を読みたい管理者のブログ

仕事などでの色々な発見を記事にしてます。不定期更新。

MVVM階層構造

 

 

はい。終了。

 

って、ここで終わらせてはあまりにもひどい気がするので多少解説。

 

MVVMの解説でよくあるのは

View←→ViewModel←→Model

だったと思う。

ViewはViewModelのみを参照し、ViewModelはViewとModelの板挟みになっていて、ModelはViewModelからのみ参照される。

こうしてViewとModelの分離を実現したまではわかった。

でも、実際にどう運用されているかまではわからなかった。

 

僕はViewModelをViewへのデータの表示を楽にしてくれる道具みたいにしか思ってなかったんですね。

だから個々のViewとViewModelをなるべく細かく分割しようとした。それが意味のある試みだったのかどうか、今でもわからないのだけれど。

 

View←→ViewModel←→Model

 

で示されてるViewはView全体を、ViewModelはViewModel全体を表す。

 

だから、MVVMというのは、WindowsFormでViewごとに縦割りで処理を分けていたのを、ViewとViewModel,Modelという横割りで構築しましょうっていう考え方だったんですね。

 

非常に勉強になった。

 

 

最後に

 

SpecialThanks

トロこんぶ: MVVMでメッセンジャーなしに画面遷移を実現する- 画面遷移を画面状態としてモデル化する