Developpez.com - Microsoft DotNET
X

Choisissez d'abord la catégorieensuite la rubrique :


Aperçu d'ASP.NET MVC

Date de publication : mai 2009

Par Philippe Vialatte (Traduction) (ma page DVP) (Blog)
 

En savoir plus sur les différences entre les applications ASP.NET MVC et les formulaires Web ASP.NET. Apprendre à décider de quand il est plus approprié de construire une application ASP.NET MVC.

               Version PDF (Miroir)   Version hors-ligne (Miroir)

Traduction
Introduction
Décider quand créer une application MVC
Avantages d'une application web basée sur MVC
Avantages d'une application web basée sur les formulaires Web
Caractéristiques du Framework ASP.NET MVC


Traduction

Cet article est la traduction la plus fidèle possible de l'article original : en ASP.NET MVC Overview


Introduction

Le patron d'architecture (architectural pattern) Modèle-Vue-Contrôleur (MVC) sépare une application en trois composants principaux : le modèle, la vue et le contrôleur. Le Framework ASP.NET MVC fournit une alternative au modèle de formulaires Web ASP.NET, en permettant la création d'applications web basées sur MVC.
Le Framework ASP.NET MVC est un Framework de présentation léger, facilement testable, qui (comme pour les applications utilisant les Formulaires Web) est intégré avec les fonctionnalités ASP.NET, dont les pages maîtres et les mécanismes d'authentification. Le Framework MVC est défini dans l'espace de noms System.Web.Mvc et est un élément fondamental, de l'espace de noms System.Web.

MVC est un schéma de conception auquel de nombreux développeurs sont habitués. Certains types d'applications Web bénéficieront du framework MVC. D'autres continueront d'utiliser le modèle d'application ASP.NET basé sur les formulaires Web et les postbacks. D'autres types d'applications Web combineront les deux approches, une approche n'excluant pas l'autre.

Le Framework MVC comprend les éléments suivants:

* Modèle : les modèles sont les parties de l'application qui mettent en œuvre la logique de l'application de données de domaine.
Souvent, les objets du modèle récupèrent et stockent l'état des objets dans une base de données. Par exemple, un objet Product peut récupérer les informations d'une base de données, les exploiter, puis sauvegarder les informations mises à jour dans une table Products dans SQL Server.
Dans de petites applications, le modèle est souvent une séparation conceptuelle au lieu d'une séparation physique. Par exemple, si l'application ne fait que lire une série de données et les envoyer à la vue, l'application n'a pas besoin d'avoir une couche modèle physique et des classes associées. Dans ce cas, l'ensemble des données assume le rôle d'un modèle objet.

* Vues : Les vues sont les éléments qui affichent l'interface utilisateur (UI). Typiquement, cette interface utilisateur est créée à partir du modèle de données.
Un exemple serait une vue d'édition d'un tableau de produits, affichant des zones de texte, des listes déroulantes et des cases à cocher basées sur l'état actuel d'un objet de type Product.

* Contrôleurs : Les contrôleurs sont les composants qui gèrent l'interaction avec l'utilisateur, travaillent avec le modèle et, finalement, sélectionnent la vue qui va permettre de faire un rendu de l'interface utilisateur.
Dans une application MVC, la vue ne fait qu'afficher les informations que le contrôleur gère et répond aux entrées et actions de l'utilisateur. Par exemple, le contrôleur traite les valeurs de chaîne de requête et transmet ces valeurs au modèle qui, en retour, effectue les requêtes sur la base de données en utilisant les valeurs.

Le pattern MVC vous aide à créer des applications qui séparent les différents aspects de l'application (traitement des données, logique métier et interface utilisateur), tout en fournissant un couplage lâche entre ces éléments. Le traitement des données fournies par l'utilisateur appartient au contrôleur. La logique métier appartient au modèle.
Cette séparation vous permet de gérer la complexité lorsque vous construisez une application, car elle permet de vous concentrer sur un aspect de la mise en œuvre à la fois. Par exemple, vous pouvez vous concentrer sur la vue, sans devoir dépendre de la logique métier.

En plus de gérer la complexité, le modèle MVC rends plus facile de tester les applications qu'il n'est facile de tester un site basé sur les formulaires Web ASP.NET. Par exemple, dans un site Web basée sur les formulaires Web ASP.NET, une classe unique est utilisée à la fois pour gérer l'affichage et pour répondre aux actions de l'utilisateur. Ecrire des tests automatisés pour un site Web basé sur les formulaires ASP.NET peut être complexes, parce que, pour une page de test, vous devez instancier la classe de la page, l'ensemble de ses contrôles enfants, et toutes les classes dont la page dépends dans l'application. Etant donné que de nombreuses classes sont instanciées pour exécuter la page, il peut être difficile d'écrire des tests qui se concentrent sur des parties individuelles de l'application. Tester un site basé sur les formulaires Web ASP.NET peut donc être plus difficile que de tester une application MVC. De plus, des tests ciblant un site basé sur les formulaires Web ASP.NET nécessitent un serveur Web. Le Framework MVC dissocie les éléments et se base sur des interfaces, ce qui permet de tester les composants en isolation par rapport au reste du Framework.

Le couplage lâche entre les trois principales composantes d'une application MVC encourage aussi le développement parallèle. Par exemple, un développeur peut travailler sur les vues, un autre développeur peut travailler sur le code du contrôleur, et un troisième développeur peut se concentrer sur la logique métier dans le modèle.


Décider quand créer une application MVC

Vous devez examiner attentivement s'il y a lieu de mettre en oeuvre une application Web en utilisant le Framework MVC ou le modèle des formulaires Web ASP.NET. Le Framework MVC ne remplace pas le modèle de formulaires Web, vous pouvez utiliser le Framework de votre choix pour vos applications Web. (Si vous avez des applications existantes basées sur les formulaires Web, celles-ci continuent à fonctionner exactement comme elles l'ont toujours fait.)

Avant de décider d'utiliser le Framework MVC ou les formulaires Web pour un site Web spécifique, il faut peser les avantages de chaque approche.


Avantages d'une application web basée sur MVC

Le Framework ASP.NET MVC offre les avantages suivants :


Avantages d'une application web basée sur les formulaires Web

Les formulaires Web basée offrent les avantages suivants :


Caractéristiques du Framework ASP.NET MVC

Le Framework ASP.NET MVC fournit les fonctionnalités suivantes :



               Version PDF (Miroir)   Version hors-ligne (Miroir)

Valid XHTML 1.1!Valid CSS!

Copyright © 2009 Equipe dotnet. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts. Droits de diffusion permanents accordés à Developpez LLC.

Responsable bénévole de la rubrique Microsoft DotNET : Hinault Romaric -