mvvm模式

看到一篇介绍 MVVM的文章,这个概念出自Functional Reactive Programming on iOS这本书,提出了mvvm模拟以解决mvc由于不易于自动化测试,manager指代不明,以及网络逻辑,视图中验证逻辑等所属不明(应放入c还是m中呢)而导致的v可能的臃肿。链接如下:http://www.cocoachina.com/industry/20140716/9152.html
model-view-viewmodel(mvvm)模式的要点在于:
【mvvm模式】首先,view和view controller紧密联系,即与view效果相关的各种效果以及view本身所触发的各种动作会得到view controller的立即响应
其次,model的模式为自驱动(内化网络功能)及view model驱动,亦即view和view controller不能直接操控model
最后,viewmodel位于整个模式中最为核心的部位,即其与 view和view controller的组合进行完全的交互,同时亦与model进行完全的交互
使用方法在于,展示逻辑位于viewmodel中,viewcontroller的臃肿得以解决
其带来的结果即是viewmodel并未引用view而又完整地包含了展示逻辑,而且整个应用的可单元测试性得到了提升

    推荐阅读