VIPER践行"单一职责原则"最好的架构,由视图 (View),交互器 (Interactor),展示器 (Presenter),实体 (Entity) 以及路由 (Routing) 组成。
- 视图:UI展示
- 交互器:包括关于数据和网络请求的业务逻辑,例如创建一个实体(数据),或者从服务器中获取一些数据。
- 展示器:包含UI层面的业务逻辑以及在交互器层面的方法调用。
- 实体:普通的数据对象,不属于数据访问层次,因为数据访问属于交互器的职责。
- 路由器:用来连接VIPER的各个模块。

-
项目中架构如此:
1.首先视图不再拥有模型。
2.展示器拥有模型以及view,准备所有view需要的最终数据,进行最后的赋值操作。并涵盖了UI层面的业务逻辑,视图的block回调也会在展示器中操作处理事件,以及加入view的监听通知事件。
3.交互器
4.实体就是模型,数据对象。
5.路由,控制器连接VIPER的各个模块,统一调度, 管理生命周期




