L'objectif de ce document est de présenter le design pattern, modèle de conception, Modèle Vue Contrôleur (MVC). Pour cela, ce document fera une description générale du MVC. Ensuite ce document illustre progressivement les composantes de MVC et leurs interactions et ce notemment grâce à UML. La dernière partie est consacrée à une implémentation en JAVA de ce design pattern.
Il s'agit du modèle de conception Modèle Vue Contrôleur. MVC a pour objectif d'organiser la réalisation de l'application et à séparer complétement la présentation (Vue) des données (Modèle) et de la manière de leur enregistrement (Contrôleur).
On définit le rôle des trois entités de la façon suivante :

Fig 1 : Intéraction entre les couches MVC
Pour donner une image la vue constitue la maquette de l'application à laquelle le modèle donne un comportement, le tout est géré par le controleur. En effet, la logique métier ne gére pas l'affichage des données. C'est la Vue qui à le pouvoir de les afficher car c'est elle qui sait de quel objet il s'agit. D'un autre côté, la vue ne présente que les données préparées à l'avance : le contrôleur est charger de traiter la requête et d'obtenir les valeurs adéquates (voir Fig 1).
Nous avons vu le principe théorique de MVC, nous allons nous concentré maintenant à la mise en oeuvre d'un tel modèle. Pour cela nous allons utiliser UML et ce afin de mettre en évidence les interactions entre les différentes composantes du système.
L'objectif est de concevoir une application qui contient dans une fenêtre : une étiquette (label), un champ texte et un bouton. Cette application sera capable de d'échanger le contenu du label avec celui du champ texte par pression sur le bouton.
Nous avons ici :
Nous aurons donc dans un premier temps une étiquette initiale, puis nous rentrerons un nouveau texte et nous modifierons la vue en appuyant sur le bouton.
Voyons cela en image :

Fig 3 : Application MVC

Fig 4 : Application MVC

Fig 5 : Application MVC
Voyons le diagramme de séquence de l'application de test et ce afin de mettre en évidence le comportement MVC de l'application.

Fig 6 : Diagramme de séquence de MVC
Ainsi que le diagramme de classe :

Fig 7 : Diagramme de classe de MVC
La notion d'Observer / Observable avec JAVA est la dernière étape à connaitre avant de pouvoir obtenir le code JAVA de l'application.
Cette classe représente un objet observable : ce qui correspond au modèle dans MVC. Cette classe peut être utilisée comme sous classe pour représenter un objet dans l'application qui doit être observé.
Cette classe posséde notemment les méthodes :
Une classe peut implémenter l'interface Observer quand elle veut être informée du changement d'objet observable.
La méthode à implémenter est alors :
A travers ce document nous avons vu comment imlpémenter le modèle de conception MVC au sein d'une application Java.
Copyright (C) Florian GRISONI, Nicolas GIROT
Cet article et tout ce qui s'en rattache directement est distribué sous liscence GPL ; vous pouvez le redistribuer et/ou le modifier conformément aux dispositions de la Licence Publique Générale GNU, telle que publiée par la Free Software Foundation ; version 2 de la licence, ou encore (à votre choix) toute version ultérieure.
Cet article et tout ce qui s'en rattache directement est distribué dans l'espoir qu'il sera utile, mais SANS AUCUNE GARANTIE ; sans même la garantie implicite de COMMERCIALISATION ou D'ADAPTATION A UN OBJET PARTICULIER. Pour plus de détail, voir la Licence Publique Générale GNU .