MVC示意图:
MVVM示意图:
对我来说,使用MVVM的动机是,它减少了视图控制器的复杂性,并且使得展示逻辑更容易测试。
我希望你从这篇文章中拿走真正非常重要的三个要点:
MVVM和你现有的MVC架构是兼容的
MVVM让你的app更具可测试性
拥有一个绑定机制会让MVVM发挥得更出色
如果我们没有把展示逻辑移到viewModel里,我们就不得不初始化一个完整的视图控制器和相关的视图。那不仅是一个不便利的迂回,而且也代表了相当脆弱的测试。而现在我们可以自由地修改视图层级而不会打断单元测试。