架构模式-VIPER
架构模式-VIPER
iOS架构模式,可参考如下的文章:
- iOS 架构模式–解密 MVC,MVP,MVVM以及VIPER架构
- 浅谈 MVC、MVP 和 MVVM 架构模式
- iOS VIPER架构实践(一):从MVC到MVVM到VIPER
- iOS VIPER架构实践(二):VIPER详解与实现
VIPER的全称是View-Interactor-Presenter-Entity-Router
。示意图如下:
View
- 提供完整的视图,负责视图的组合、布局、更新
- 向Presenter提供更新视图的接口
- 将View相关的事件发送给Presenter
Presenter
- 接收并处理来自View的事件
- 向Interactor请求调用业务逻辑
- 向Interactor提供View中的数据
- 接收并处理来自Interactor的数据回调事件
- 通知View进行更新操作
- 通过Router跳转到其他View
Router
- 提供View之间的跳转功能,减少了模块间的耦合
- 初始化VIPER的各个模块
Interactor
- 维护主要的业务逻辑功能,向Presenter提供现有的业务用例
- 维护、获取、更新Entity
- 当有业务相关的事件发生时,处理事件,并通知Presenter
Entity
- 和Model一样的数据模型