首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Model-View-Presenter和Model-View-Adapter有什么区别?

Model-View-Presenter和Model-View-Adapter有什么区别?
EN

Stack Overflow用户
提问于 2013-03-23 23:32:19
回答 1查看 3.6K关注 0票数 17

我正在尝试了解Model-View-Presenter和Model-View-Adapter模式之间是否存在差异,如果有,那么差异是什么。我还没有找到任何比较/对比它们的在线资源,所以我甚至不确定它们是否真的是不同的。

我找到的对它们的描述对我来说基本上是一样的。从我收集的信息来看,在这两种情况下,控制流基本上都是:

代码语言:javascript
复制
View <-- Adapter/Presenter --> Model
(where Adapter/Presenter can also respond to events from View and Model)

View: the UI
Adapter/Presenter: main logic; mediator between the UI and the data model
Model: the data model

Adapter/Presenter“知道”视图和模型,但是视图和模型除了它们自己之外不知道任何人。

我希望这里有一个我完全忽略的微妙之处。那是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-22 04:38:04

我能想到的唯一一件事是MVA通常与视图和模型之间有多个适配器相关。虽然没有什么能阻止你在MVP中这样做,但我认为MVP意味着一个强大的三和弦。

更新(几年后):回想起来,我认为一个关键的区别是控制流。在MVP中,View触发/创建/调用Presenter,后者委托模型并响应View。在MVA中,当消息传入时,会选择一个Adapter,然后在Model和View之间进行协调。由于MVP视图触发/创建/调用Presenter,因此在多个Presenter之间进行选择(因为选择了Adapter )并不是一种简单的匹配。

票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15588562

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档