1 / 19

Le Modèle MVC

Le Modèle MVC. Sous la direction de : Mr, ELHORE. Réalisé par : SENHAJI Saad. Introduction L’Architecture MVC Le modèle La vue Le Contrôleur Le Cycle de vie d’une requête MVC1 MVC2 MVC1 Vs MVC2 J2EE et MVC Avantages Inconvénients Conclusion. Sommaire.

Download Presentation

Le Modèle MVC

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Le Modèle MVC Sous la direction de : Mr, ELHORE Réalisé par : SENHAJI Saad

  2. Introduction • L’Architecture MVC • Le modèle • La vue • Le Contrôleur • Le Cycle de vie d’une requête • MVC1 • MVC2 • MVC1 Vs MVC2 • J2EE et MVC • Avantages • Inconvénients • Conclusion Sommaire

  3. Le Model-View-Controller (MVC) est un pattern d’architecture logicielle largement répandu. Il a été créé dans les années 1980 par TrygveReenskaug au Xerox PARC • Il repose sur la volonté de séparer les données, les traitements et la présentation. • Plus récemment, il a été recommandé comme modèle pour la plate forme J2EE de Sun et gagne fortement en popularité auprès des développeurs, quelque soit le langage utilisé. Introduction

  4. But : • Isoler la donnée elle-même de sa présentation • Distinguer la consultation de la modification • Principe : • Les 3 composantes suivantes d'une donnée sont distinguées et séparées : • Le modèle (sa structure) • La vue (sa représentation pour affichage) • Le contrôleur (les moyens de modifier la valeur) L’architecture MVC

  5. Architecture du MVC

  6. Le modèle correspond aux données, la plupart du temps stockées dans une base de données. Mais celles-ci peuvent également êtres contenues dans un fichier XML ou dans des fichiers texte. • Les données peuvent être exploitées sous forme de classes, dans un langage de programmation orientée objet, Le modèle

  7. Représente l'interface utilisateur. Elle n'effectue aucun traitement, elle se contente simplement d'afficher les données que lui fournit le modèle. Il peut tout à fait y avoir plusieurs vues qui présentent les données d'un même modèle. • La vue correspond à un fichier HTML la plupart du temps (peut être un fichier XML avec une feuille de style XSL). Elle se contente d’afficher le contenu qu’elle reçoit sans avoir connaissance des données. La vue

  8. Le contrôleur se charge d'intercepter les requêtes de l'utilisateur, d'appeler le modèle puis de rediriger vers la vue adéquate. Il ne doit faire aucun traitement. Il ne fait que de l'interception et de la redirection. Le Contrôleur

  9. Le client envoie une requête à l'application • La servlet analyse la requête • Cette classe exécute les traitements • la servlet redirige la requête vers la page JSP • La JSP génère la réponse qui est renvoyée au client Le cycle de vie d’une requête

  10. Cycle de vie du modèle MVC

  11. MVC 1

  12. MVC 2

  13. Inconvénient MVC1 : • Multiplication du nombre de Servlets • Lourdeur de déclaration au niveau du Serveur d'Application • Mises à jour peu aisées • ● Modèle MVC2 • Une seule Servlet de contrôle servant d'aiguillage et à l'architecture simple : switch(pageSource) { case page1 : pageSuite=traitement1();afficher(pageSuite);break; case page2 : pageSuite=traitement2();afficher(pageSuite);break; ... } • En pratique : une classe par traitement MVC1 Vs MVC2

  14. L'architecture J2EE permet de séparer les couches. • La couche présentation, correspondant à l'interface homme-machine(IHM). • La couche métier contenant l'essentiel des traitements de données. • La couche de données correspondant aux informations de l'entreprise stockées dans des fichiers, dans des bases relationnelles ou XML, dans des annuaires d'entreprise.. J2EE et MVC

  15. Il y a plusieurs Framework qui permettent d’implémenter le modèle MVC. • Pour la couche Vue: Swing, AWT, JFC, struts, richfaces, GWT, myfaces, icefaces, spring web MVC…. • Pour la couche modèle: on utilise des Framework pour assurer la persistance des objets et le mapping objet relationnel tel que hibernate,jpa,ibatis... • Pour la couche métier: on peut utiliser des EJB, javabeans, webservices…. J2EE et MVC

  16. L’approche MVC apporte de réels avantages: • Une conception claire et efficace grâce à la séparation des données de la vue et du contrôleur • Un gain de temps de maintenance et d’évolution du site • Une plus grande souplesse pour organiser le développement du site entre différents développeurs (indépendance des données, de l’affichage (webdesign) et des actions) Les avantages du MVC

  17. L’inconvénient majeur du modèle MVC n’est visible que dans la réalisation de petits projets, de sites internet de faible envergure. • En effet, la séparation des différentes couches nécessite la création de plus de fichiers (3 fois plus exactement): • Un fichier pour le modèle • Un fichier pour le contrôleur • Un fichier pour la vue • Il n’est donc pas très intéressant de recourir à ce système dans ce cas là. Les Inconvénients du MVC

  18. L’architecture MVC est une solution très intéressante et très puissante, à mettre en œuvre dans de grands projets de préférence. • L’indépendance des trois couches est très importante, car c’est grâce à cette différenciation que l’architecture puise sa puissance et sa logique. • Il est ainsi facile de mettre à jour le design de son site, sans toucher aux données ni à la façon dont elles sont organisées. Inversement, il est aussi facile de modifier la structure de stockage des données ou la manière dont elles sont gérées sans bouleverser l’affichage. Conclusion

  19. MERCI POUR VOTRE ATENTION

More Related