美文网首页
MVC MVP MVVM

MVC MVP MVVM

作者: 一代骄马 | 来源:发表于2018-07-17 11:27 被阅读18次

深入分析MVC、MVP、MVVM、VIPER - 简书

controller层(VC):

生成view,然后组装view

响应View的事件和作为view的代理

调用model的数据获取接口,拿到返回数据,处理加工,渲染到view显示

处理view的生命周期

处理界面之间的跳转

model层:

业务逻辑封装

提供数据接口给controller使用

数据持久化存储和读取

作为数据模型存储数据

view层:

界面元素搭建,动画效果,数据展示,

接受用户操作并反馈视觉效果

MVP

MVC的缺点在于并没有区分业务逻辑和业务展示, 这对单元测试很不友好。 MVP针对以上缺点做了优化, 它将业务逻辑和业务展示也做了一层隔离, 对应的就变成了MVCP。 M和V功能不变, 原来的C现在只负责view的生成和作为view的代理(view的布局依然由SceneVC来完成), 而所有的业务逻辑全都转移到了P层.

Model -ViewModel - View

什么是 MVVM:一个 MVC 的增强版,将表示逻辑从 Controller 移出放到一个新的对象里,即 View Mode

https://www.objc.io/issues/13-architecture/mvvm/

MVVM与现有的MVC体系结构兼容。

MVVM使您的应用程序更易于测试。

MVVM最好采用绑定机制。(可以采用kvo delegate 通知)

相关文章

网友评论

      本文标题:MVC MVP MVVM

      本文链接:https://www.haomeiwen.com/subject/njsrpftx.html