WPF:MVP与MVVM

Raj*_*r G 16 c# wpf mvp mvvm

MVP VS MVVM有什么区别?为什么我们使用MVP,即使我们有三层:业务,数据访问和演示?是否有任何具体原因将Presentation层划分为MVP?

Mer*_*ham 16

MVP和MVVM都是MVC的衍生物.MVC是一种将用户表示和交互与内部表示分开的模式.

这需要三层,因为将用户交互/呈现直接绑定到内部表示将导致两者弯曲以彼此一致.在您的应用程序中,您将这些层描述为Presentation,Business层和Data Access层.只有那些非常松散的描述,您可能会描述任何MVC衍生物或原始MVC模式本身.

每个派生词之间的主要区别在于每个层在其他层上所依赖的依赖关系,以及它们彼此之间的紧密程度.本文有一些关于差异的细节,当然它不应该被认为是权威的:

http://nirajrules.wordpress.com/2009/07/18/mvc-vs-mvp-vs-mvvm/

"... MVVM对于支持双向绑定而不费力的平台很有吸引力.另外一个小的权衡是ViewModel与Presenter不同(Presenter通常需要View的界面)."