MVVM 的理解

MVVM 是 Model - View - ViewModel 的缩写 可以看到他和之前的MVC很像,的确有人称之为一个加强优化版的MVC. 是一种模块化开发代码分层的思想或者框架!

MVVM 的优点
1、主要目的是分离视图(View)和模型(Model)
2、降低代码耦合,提高视图或者逻辑的重用性。
3、提高了模块的可测试性

任务分工

1、模型(Model)

  模型和业务数据绑定,方便数据的使用和传递

2、视图(View
![Uploading 屏幕快照 2016-06-01 上午10.28.13_147186.png . . .]-control)

  视图是应用程序中用户界面相关的部分,是用户看到并与之交互的界面。

如: label 、button 、view、ImageView、textfield 、textview、以及他们的组合 等等!

3、ViewModel

首先它的创建需要将Model中的数据绑定在他身上。将原来MVC中的业务逻辑剥离出来 写在ViewModel中,简化view 、和 controller

屏幕快照 2016-06-01 上午10.28.13.png

使用步骤
1、模块中需要的数据,通过网络层请求得到 ,然后将数据绑定到Model层中
2、将model层中的数据转化到ViewModel中,然后在ViewModel中处理一些逻辑问题
3、将ViewModel中的数据绑定到控制器的View上 然后更新界面

(MVVM配合ReactiveCocoa使用才能体会到ViewMedel的强大!)

http://www.jianshu.com/p/bc297d9e6aa5

原文地址:https://www.cnblogs.com/wangqiao170/p/6645190.html