Lea*_*ner 15 asp.net silverlight wpf design-patterns winforms
伙计我经历了很多链接/博客.我看到他们中的大多数人不能用外行语言清楚地沟通,以及MVP,MVVM和MVC之间的技术差异.我知道每个角色代表什么,也参与MVP.但是,如果有人问我同样的问题,我真的不明白.为什么我不能在MvP中使用控制器而不是Presenter?为什么在MVVM中使用View Model而不是演示者,以及它有何不同?我可以在一个单一sentense说"MVC是ASP.NET优化,也有在VS模板,MVP是为WinForms和MVVM为SL/WPF优化的,因为它支持内置的绑定功能等".但我觉得这不是我必须理解的,而是详细而深刻的.有人可以通过详细的解释和用法以及选择一个的实际理由来阐明这一点.谢谢你们...
Rac*_*hel 10
我不能给你一个完整的答案,但是我很难学习其中的一些模式,并且可能能够让你对一些主要的差异有所了解.
我首先学习了MVVM,然后是MVC.我知道MVP以及它在理论上是如何工作的,但是我从来没有真正用它构建一个应用程序.
设计模式之间的最大区别似乎是谁控制应用程序流和逻辑.
在MVVM中,您的代码类(ViewModels)是您的应用程序,而您Views只是一个非常用户友好的界面,它位于应用程序代码之上,允许用户与之交互.这意味着它ViewModels有一项巨大的工作,因为它们是您的应用程序,并且负责从应用程序流到业务逻辑的所有事情.
使用MVC,您Views的应用程序是您的应用Controller程序流程.通常可以找到应用程序逻辑ViewModels,它被认为是MMVC的一部分(旁注:MMVC中的内容不能与MMVVM中的相同,因为MVC的M层包含的功能比MVVM的M层更多).为用户提供一个屏幕(View),他们与之交互然后向其提交内容Controller,并Controller决定谁对数据做了什么,View并向用户返回一个新内容.
我没有使用MVP,但是我对它的理解与MVC非常相似,但是针对桌面应用程序而不是客户端/服务器应用程序进行了优化.这Views是实际的应用程序,而Presenter处理应用程序事件和业务逻辑.
| 归档时间: |
|
| 查看次数: |
2425 次 |
| 最近记录: |