iOS中的MVP设计模式
我确定您已经熟悉MVC,但是您也感到有些痛苦,例如:
- 难以在View和ViewController上进行测试
- Viewcontroller处理一切时变得越来越大
今天,我要谈谈另一种架构模式MVP 。
什么是MVP
模型视图呈现者(MVP)是模型视图控制器(MVC)架构模式的派生产品,主要用于构建用户界面。
—维基百科
这里的被动视图部分包括视图和视图控制器。
- 该模型是放置数据的地方,并定义了处理该数据的逻辑和计算。
- view(view + viewcontroller)是一个被动界面,可以简单地显示数据,并接收将其处理的用户动作呈现给演示者。
- 演示者是模型和视图之间的中介者。 所有演示逻辑都应放在此处。
代码说明
//模型
优点
- 降低代码复杂度
- 易于执行单元测试
- 视图控制器不再庞大
- Xcode没有embedded框架部分
- 架构i386的未定义符号:“_OBJC_CLASS _ $ _ MFMailComposeViewController”
- Storyboard静态单元格:dequeueReusableCellWithIdentifier返回nil
- 在用户仍然可以使用UI的情况下在后台运行进程
- 如何以同样的方式改变NSMutable数组的顺序,另一个可变数组发生了变化
- 适用于FBSDK和LinkingManager的AppDelegate.m
- 如何以编程方式获取电话号码
- 如何根据文本标签长度dynamic设置表格单元高度?
- 如何proportinally大小的基于iPhone的图像正在使用