41 votes

MVC / MVP / MVVM Qu'est-ce que c'est?

J'ai récemment travaillé sur un .Net WPF projet de construction d'un détail, système de point de vente où j'ai utilisé le modèle MVP pour la première fois. Il m'a fallu un peu de temps pour envelopper ma tête autour du changement d'approche, mais une fois que je l'ai fait je pensais que le concept a basculé!

Ma question est la suivante: quelle est la distinction entre MVC, MVP et MVVM? Si il y a une distinction claire, il y a des lignes directrices lorsque vous devez utiliser un modèle plutôt qu'un autre?

Si quelqu'un peut offrir des conseils sur ce, ou de l'article qui explique les différences que j'aurais beaucoup l'apprécier.

17voto

JustABitOfCode Points 721

Le Guide d'architecture applicative de Microsoft décrit MVC et MVP et explore les différences entre les deux.

http://www.codeplex.com/AppArch

Cet article MSDN décrit MVVM et son évolution.

http://msdn.microsoft.com/en-us/magazine/dd419663.aspx

3voto

simbo1905 Points 911

Il peut être difficile d'analyser les différences entre les modèles en regardant un modèle particulier mis en œuvre dans un cadre particulier. Cet article msdn WPF MVVM fait référence à Martin Fowlers origine des articles qui expliquent un modèle comme une approche générale:

En 2004, Martin Fowler a publié un article sur un modèle nommé Modèle de Présentation (PM) [...] envisager MVVM pour être une spécialisation de la plus générale PM motif, fait sur mesure pour WPF et Silverlight plates-formes.

Afin de comprendre les différents modèles il est utile de regarder Martin Fowler descriptions des différentes approches. Son avis Passive motif est le MVP de l'approche. Sa Supervision du Contrôleur pattern MVC approche. Son Modèle de Présentation motif est le MVVM approche. Cet article plus ancien prend sur l'évolution de ces modèles.

Il peut également aider à regarder des mises en œuvre dans différentes langues. L'article la mise en Œuvre de event-driven GUI motifs à l'aide de la ZK Java framework AJAX compare les trois de Martin Fowler les modèles mentionnés ci-dessus dans un cadre moderne framework Java. Même si ses une autre langue et un autre cadre de la WPF, il peut aider à voir le modèle plutôt que de la mise en œuvre du schéma de voir qu'il fait dans une langue différente.

2voto

chetan_jagetia Points 21

Je suis tombé sur cet article utile .. http://nirajrules.wordpress.com/2009/07/18/mvc-vs-mvp-vs-mvvm/

1voto

Patrick Szalapski Points 1756

Voici une liste de liens MVVM qui pourraient également aider.

http://karlshifflett.wordpress.com/mvvm/

1voto

jbe Points 1454

Peut-être que cet article sur le modèle Model-View-ViewModel (MVVM) vous aide à voir les différences:

http://waf.codeplex.com/Wiki/View.aspx?title=Model-View-ViewModel%20Pattern

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X