【发布时间】:2012-07-09 04:21:12
【问题描述】:
伙计们,我浏览了许多链接/博客。我看到他们中的大多数人无法用外行语言清晰地交流,以及 MVP、MVVM 和 MVC 之间的技术差异。我知道每个角色代表什么,也曾为 MVP 工作过。但是真的不明白是否有人问我同样的问题。为什么我不能在 MvP 中使用控制器而不是 Presenter ?为什么在 MVVM 中查看模型而不是演示者,它有什么不同?我可以用一句话说“MVC 针对 ASP.NET 进行了优化,并且在 VS 中也有模板,MVP 针对 winforms 和针对 SL/WPF 的 MVVM 进行了优化,因为它支持内置绑定功能等”。但我觉得这不是我必须了解的,而是详细而深入的。有人可以通过详细的解释和用法以及选择一个的实际理由来阐明这一点。谢谢大家...
【问题讨论】:
-
这里有很多帮助:google.com/#q=difference+between+MVP+MVC+and+MVVM。我们能说这些博客中没有充分涵盖的内容是什么?
-
@RobertHarvey:大多数博客实际上令人困惑,人们不断重复相同的复制粘贴。我不认为它的精确和所有人都可以理解。我也敢肯定,很多人像我一样,如果被问到,仍然无法清楚地解释这些差异。我更喜欢外行人的句子来解释 3 的差异,而且正如我所问的,如果我用 Present 替换 Controller 并用 View Model 替换 Presenter 会怎样。我想要这些类型的问题的答案。还有技术差异。 (因为所有的目标都是单一的)
-
SO 是针对特定的编程问题。
-
@Divine 坦率地说,在一个答案中解释会很费力,而且存在一些相互矛盾的意见,也许您可以自己研究并提出更具体的问题。
-
@Divine 就像编程的许多部分一样,即使在阅读之后也很难理解,直到您真正在其中编程。没有多少程序员使用过 MVC、MVVM 和 MVP,即使他们使用过可能使用不同的语言/框架,所以找到好的比较是相当困难的,尽管我想了解自己。
标签: asp.net wpf winforms silverlight design-patterns