可能重复:
What are MVP and MVC and what is the difference?
mvc and mvp pattern过MVP
伙计们,
什么是一些使用MVC在MVP的好处是什么?我喜欢我不必为MVP使用框架,并且可以通过接口和类来实现。我仍然得到MVC关注的分离,并且我得到了单元测试。 MVC使用MVP有什么好处?
可能重复:
What are MVP and MVC and what is the difference?
mvc and mvp pattern过MVP
伙计们,
什么是一些使用MVC在MVP的好处是什么?我喜欢我不必为MVP使用框架,并且可以通过接口和类来实现。我仍然得到MVC关注的分离,并且我得到了单元测试。 MVC使用MVP有什么好处?
我根本不知道“MVP”,但哈克[溢出]有一个非常漂亮的文章......
Everything You Wanted To Know About MVC and MVP But Were Afraid To Ask
当时哈克块交叉链接的图像的风险...哈克说,所不同的是明确的:) alt text http://haacked.com/images/haacked_com/WindowsLiveWriter/MVCandMVPPatternResources_71CE/WinMerge%20-%20%5BMVP.txt%20-%20mvc.txt%5D_3.png
因为我已经被我的约重复审查的意见,我只想引用这个SO问题,并把它留给了“更高的力量”来关闭,如果他们认为合适的:P
What are MVP and MVC and what is the difference?
有时候人们会挂在首字母和TLA之上。
如果Phil Haack在他的文章中说的是真的,我以为我在ASP.NET MVC中使用MVC,但是我真正使用的是MVP(或MVC的调整形式)。
在MVC中,它总是控制器的 负责处理鼠标和键盘 事件。使用MVP,GUI 组件本身最初会处理 用户的输入,但委托给 演示者的该输入的解释。
但这并不是ASP.NET MVC的真正目的。
如果我处理鼠标和键盘事件,我喜欢在浏览器中使用jQuery来完成它。该将用户交互与控制器分开,并提供UI层与“业务”层之间更好的解耦。
如果我需要使用AJAX调用或JSON调用来更新我的页面的一部分,无论如何我仍然需要这样做,无论我称之为MVC还是MVP。
ASP.NET的WebForms,例如, 试图通过使用 的ViewState的模拟富客户端 的发展模式。这就是为什么许多尝试 将模式应用于ASP.NET的重点在于 MVP模式,因为MVP 模式更适合具有GUI 客户端应用程序和GUI 组件。
然而,许多网络平台接受 网络的无状态特性和 放弃试图模拟 状态,充满了浓郁的客户端开发 环境。在这样的系统中,调整MVC模式更适用于 。
很明显,Phil将MVC视为一种更无国籍,更瘦客户端的举措,而MVP将更多责任放在UI层上,以提供丰富的用户体验。
这是否是件好事是主观的。如果ASP.NET是MVP并且ASP.NET MVC是MVC,那么我会很乐意接受MVC的首字母来放弃像viewstate和obtuse逻辑之类的东西。
如果您想要决定的全部原因是什么,那么您希望将某个业务层用于Web版本和胖客户端版本;-) aaak – FastAl 2010-05-17 13:14:38
有趣 - 我以前没有见过。 – RichardOD 2009-07-30 17:01:01