谁能谈谈MVC MVVM在iOS里面的应用

自从面试了之后,被问到这个问题,基本上答得很模糊. 到底怎么样才算比较好的理解这两个框架?如何真正使用好呢

回答:

安利一下:MVVM 模式及 ReactiveCocoa

回答:

准确的说 MVC和MVVM是两种设计模式,而并非框架。
有基于MVC或者MVVM设计模式的框架
a1c71efe626f7affc1bec2be6600b67f_b.jpg
设计理念这个东西,看看这篇知乎文章吧
希望能帮到你。

回答:

ios中MVC

//  分离View,创建一个新的view作为当前控制器的视图,实现控件布局

let myView = MyView()

// 模型

let model = MyModel()

override func viewDidLoad() {

super.viewDidLoad()

// 当前视图交给MyView管理

view = myview

// 调度数据,给视图填充内容

myview.setObjct(model)

}

MVVM 实际上和上面也差不多,差别就是不通过Controller直接调用Model,而是通过一层ViewModel,间接管理模型;执行网络访问,数据格式化操作,比如从网络获取数据之后,将UNIX时间戳转换成自己需要的显示格式,再反馈给控制器;这样就简化了控制器的大量代码;同时视图层也可以根据代码复杂程度再生产一层中间视图管理层,进行视图的调度;

总结MVVM的特点就是:减少Controller中的代码,将和数据有关的一部分处理,分离出来,在ViewModel中进行处理,将和视图相关的复杂代码分离到视图管理层上;他所传达的思想就是,MVC这种结构并不局限于Model,View,Controller三个文件,开发过程中需要根据具体情况分离代码量;使代码结构更清晰。

以上是 谁能谈谈MVC MVVM在iOS里面的应用 的全部内容, 来源链接: utcz.com/p/185580.html

回到顶部