iOS中的MVVM用法

来源:互联网 发布:mysql linux 启动失败 编辑:程序博客网 时间:2024/06/05 15:01
iOS中怎么用MVVM,MVVM是一种思想,所以先有思想再写代码。具体MVVM是什么,简单的说就是Model-ViewModel-View(ViewController)这三个,Model用来保存数据,ViewModel是讲View和Model关联起来,根据个人经验,举例来说,一个网络请求,在MVC中,当我们网络请求结束时,我们的Model就有了值,然后绑定到View上,但是,当我们修改UI的值时,我们的Model不会改变,也就是说是单向的,而,MVVM是双向的,当我们网络请求结束时,我们的Model就有了数据,然后绑定到View上呈现,这事当我们修改UI时,我们的Model也会发生改变,提交数据时,值处理我们的Model就行了,也就是说,在View层,没有任何关于数据逻辑的处理,在Model没有任何View的处理,但是Model和View是互相影响的。具体怎么影响,可以放在VM中操作,根据这个思想,我们自然而然的就会讲网络请求处理事件放到VM层,数据绑定和数据更改我们最好用观察者模式,也即是我们所说的响应式编程(ReativeCocoa)。这样我们更好的发挥MVVM的优势,而不是什么东西都在VM中操作,MVVM和MVC的区别,本人认为就是MVVM是双向绑定,MVC是单向的。我们开发就是采用的这样的方式,既节省了代码量,也节省了代码逻辑,三层清晰,耦合度低,扩展性强,方便后期维护与变更。
0 0
原创粉丝点击