架构模式-VIPER

iOS架构模式,可参考如下的文章:

  • iOS 架构模式–解密 MVC,MVP,MVVM以及VIPER架构
  • 浅谈 MVC、MVP 和 MVVM 架构模式
  • iOS VIPER架构实践(一):从MVC到MVVM到VIPER
  • iOS VIPER架构实践(二):VIPER详解与实现
  • iOS 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一样的数据模型

其它参考文章

  • 使用 VIPER 构建 iOS 应用
  • Understanding the Architecture of iOS Apps with VIPER
  • VIPER Design Pattern in Swift for iOS Application Development.
  • VIPER and best practices
  • VIPER best practices for iOS developers
  • Getting Started with the VIPER Architecture Pattern

架构模式-VIPER相关推荐

  1. iOS 架构模式--解密 MVC,MVP,MVVM以及VIPER架构

    2019独角兽企业重金招聘Python工程师标准>>> 本文由CocoaChina译者lynulzy(社区ID)翻译 作者:Bohdan Orlov 原文:iOS Architect ...

  2. iOS-【转载】架构模式 - 简述 MVC, MVP, MVVM 和 VIPER

    看了很多篇关于 iOS 架构模式的,尤其是关于 MVVM 的,都是似懂非懂,无意看见了这篇,发现总结的很到位,很用心,特转载至此,如果英语好,请看原文 iOS Architecture Pattern ...

  3. iOS-【转载】架构模式 - 简述 MVC, MVP, MVVM 和 VIPER (译)

    看了很多篇关于 iOS 架构模式的,尤其是关于 MVVM 的,都是似懂非懂,无意看见了这篇,发现总结的很到位,很用心,特转载至此,如果英语好,请看原文 iOS Architecture Pattern ...

  4. iOS 架构模式 - 简述 MVC, MVP, MVVM 和 VIPER (译)

    在使用 iOS 的 MVC 时候感觉怪怪的?想要尝试下 MVVM?之前听说过 VIPER,但是又纠结是不是值得去学? 继续阅读,你就会知道上面问题的答案 - 如果读完了还是不知道的话,欢迎留言评论. ...

  5. [iOS][转]iOS 架构模式 - 简述 MVC, MVP, MVVM 和 VIPER (译)

    转自: https://segmentfault.com/a/1190000004680605?ref=myread Make everything as simple as possible, bu ...

  6. iOS架构模式(MVC/MVCS/MVP/MVVM/VIPER)

    iOS架构模式 谈起iOS架构,也许你直接想到的就是MVC,MVVM等等.其实这是不准确的,iOS架构包含的内容有很多,而上面的这些只是iOS架构中的架构模式. 那么你在进行架构设计的时候到底是选择M ...

  7. iOS开发的架构模式

    iOS开发的架构模式 0.VIPER 为了减轻Controller层负担的方法,而VIPER架构其实是将Controller再细分成三层,分别是View.Interactor.Presenter,已达 ...

  8. iOS 架构模式 - 简述 MVC, MVP, MVVM

    Make everything as simple as possible, but not simpler - Albert Einstein,把每件事,做简单到极致,但又不过于简单 - 阿尔伯特· ...

  9. 软件开发架构模式浅谈:一些思考和实践记录

    一 背景和问题 我个人平时会比较慎用"架构"这个词 一方面是觉得业界有很多架构大师和架构模式,而我的认知和实践有限: 另一方面是因为这个词看着挺高大上.有点务虚,如果不结合实际场景 ...

最新文章

  1. 使用Oracle 的 imp ,exp 命令实现数据的导入导出
  2. 研发部 架构师 定义解读
  3. Java文件流之练习
  4. [LeetCode] Binary Tree Paths - 二叉树基础系列题目
  5. community 计算模块度_聚苯乙烯泡沫模块可以用在哪些建筑上?
  6. 为什么大家都说 SELECT * 效率低
  7. WPS Office 11.1.0.10314 免费完整版
  8. 博图安装msi失败_西门子软件WIN7系统安装须知
  9. MyEclipse编辑区设置为黑底
  10. 智能手机拍照及视频DXO mark排名
  11. QQ2012Beta1登录协议(异地需要验证码,且密码错误的情况)
  12. 工具篇 之 iTerm 2 用户名修改(基于 iTerm 2 + oh-my-zsh)
  13. 复阻抗法 求解 传递函数
  14. FXS和FXO接口的区别
  15. Matplotlib空气质量数据分析(附数据集下载)
  16. 写技术文档需要注意什么
  17. GSAP动画库入门基础示例:心爱的小摩托
  18. 《Deep Learning Techniques for Music Generation – A Survey》深度学习用于音乐生成——书籍阅读笔记(一)Chapter 1
  19. 58同城笔试:后端开发编程题
  20. Android启动模式SingleInstance

热门文章

  1. Arista Networks推出400千兆以太网交换机
  2. 「CSA49」Bunny on Number Line
  3. Java中的多态,引用类型的转换
  4. 绕过tp路由器管理密码_tplogin.cn默认密码是什么 tplogin.cn默认密码介绍【详解】...
  5. 本科科研经历(技术干货篇-论文发表流程)
  6. 使用dockers在服务器操作redis,下载安装测试等
  7. “有一只鸟来到这个世界,它该做什么?”你知道么?
  8. 岁月凶残,敬请珍惜——得知早已不能过五四节时之随想[转自伍迷]
  9. 对于共享电脑的到来,您有什么想说的
  10. 十二星座时间及其英文缩写