MVVM是MVC的改进版,它比MVC多了一个ViewModel层,主要用于控制视图的逻辑操作。
如你所见,MVVM中Model并不与ViewControl或者View产生交互。
而MVC中,不管怎样,View与Model都要经过ViewController的处理。
在我年轻的开发经验当中,已经见到不少超级重量级的ViewController。
6000以上的代码数不胜数,当时第一眼看到的时候已经有点懵了。
这并不是说MVC不好,还是要看情况。
什么时候使用MVC,什么时候使用MVVM。
当视图的控制逻辑相对简单,并不需要做太多操作的情况下,MVC可能就是你的首选。
若视图逻辑比较多,那MVVM就能排上用场了。
MVVM的相关Blog:http://objccn.io/issue-13-1/
MVC的相关Blog:http://liuzhichao.com/p/1379.html