1、MVC 和 MVP的区别
MVC:
真正的MVC,V和M不互通的但是IOS上View还是会引用Model的数据。所以是一个伪MVC。
MVP是一个面向协议的编程。
1、Controller里有P,抽到Presenter里,P对M和C进行分离
2、P和M封装起来把网络层给一个静态包,在C里只要符合协议就可以拿到数据,就可以操作了。
3、示例:
目录层级
VC : [self.userPresenter getUsers]
UserPresenter.h:
Delegate 可以给view或者给VC实现可以得到userViewData数据
getUsers 是调用的入口,先把User里的数据(这部份可以来自于网络的数据)遍历一下,组装成UserViewData准备给View使用,这样实现他的人(一般是VC)就可以给view加数据了进行渲染了。
User.h
就是发起一下网络请求拿到数据模型。