首页 存档 技术 查看内容

安卓的 MVP 架构在 iOS 里面到底是什么 总结

2018-3-30 13:00 |来自: 互联网 309 0

摘要: 不管是做 iOS 开发还是安卓开发的同学,对 MVC 和 MVVM 架构都不陌生了,但很多做 iOS 的同学对 MVP 架构都比较陌生,这个概念来源于安卓,但即使是很多优秀的安卓开发者,也不一定能说清楚 MVP 架构和 MVC、MVVM 的 ...

不管是做 iOS 开发还是安卓开发的同学,对 MVC 和 MVVM 架构都不陌生了,但很多做 iOS 的同学对 MVP 架构都比较陌生,这个概念来源于安卓,但即使是很多优秀的安卓开发者,也不一定能说清楚 MVP 架构和 MVC、MVVM 的区别。

在阮一峰老师的MVC,MVP 和 MVVM 的图示一文中有一些图例说明,很遗憾,也许他描述的是前端开发中的概念,在移动开发领域并非如此。

我们先说 MVC 模式,大家都知道项目被分为三个模块,View、Model 和 Controller。在标准 MVC 中,这三个模块两两可以交互,借用阮老师的图来表示一下(实际上箭头是双向的)

因此标准的 MVC 存在一些问题和改进点:

  1. 模块间交互太多导致关系复杂,难以管理

  2. Controller 既要处理视图相关逻辑(比如改变控件颜色和位置),也要处理数据相关逻辑,比如过滤去重、校验、修改等等

  3. 数据改变很容易,比如读取数据库或者网络请求,但不太方便映射到视图改变

对于安卓开发者来说,MVC 模式就是标准的 MVC,而对于 iOS 开发者来说,正如斯坦福公开课上白胡子老爷爷画的图那样,MVC 模式已经是改进后的 MVC 了,View 和 Model 之间不能直接访问,必须经过 Controller 中转。

View

声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

相关分类

返回顶部