🔥
MVCとMVVMの違いとは?
はじめに
張り切ってMVCでファイル切り分けたら、どこに何の役割ふりわければいいのかわからなくなりました笑
目次
- MVCについて
- MVCの問題点
- MVVMの役割
1. MVCについて
- M:Model→request, response, データ構造
- V:View→画面
- C:Controller→ViewとModelの制御
2. MVCの問題点
- やりとりがたくさんあってコード量が多くなる→重くなる
- どこにどんなロジックを書くのか問題
↓
- Controllerの負担が大きくなっている。(Fat Controller)
3. MVVMの役割
- M:Model
- V:View
- VM:View Model
MVVMについて検索をするとデータバインディングのことがよくヒットするが、データバインディングを使っていたらMVVMというわけではない。
MVCとの違い
View ModelとModelが直接すべてをやりとりするのではなく、Modelが変更通知機能を持ち、通知によって更新をViewModelに伝える。
Viewの変更する点だけをViewModelが更新する。
Discussion