Chapitre 5
L'ARCHITECTURE MODELE-VUE-CONTROLEUR
 
 
Précédent Suivant
 
L'architecture
Modèle-Vue-Contrôleur
L'architecture MVC (1/2)
* Model-View-Controller (MVC)
* Modèle d'architecture
* Propose d'organiser l'application en 3 couches
* Couplage le plus faible possible
* Objectif
* Séparer la présentation ("vue") des donnés ("modèle")
* Couplage faible réalisé par un intermédiaire ("contrôleur")
* Il assure la cohérence entre les deux couches
* Motivation
* Structurer l'interface homme-machine
La couche "modèle"
* Couche métier, le coeur de l'application
* Représente le comportement de l'application
* Contient les données de l'application
* Effectue les traitements sur ces données
* L'interface du modèle propose
* La mise à jour des données
* La consultation des données
* Résultats du modèle dénués de toute présentation
La couche "vue"
* Interface avec l'utilisateur
* 1ère tâche: présenter les résultats du modèle
* Peut interroger l'interface du modèle (en lecture seulement)
* 2nde tâche: recevoir toutes les actions de l'utilisateur
* Certains événements sont traités directement
* Si leur impact ne concerne que la vue
* D'autres sont transmis au contrôleur
* Si leur impact concerne le modèle
* La vue n'effectue aucun traitement
* Plusieurs vues possibles pour les mêmes données
La couche "contrôleur"
* Gestion des événements de synchronisation
* Reçoit les événements de l'utilisateur
* Par l'intermédiaire de la vue
* Il analyse la requête
* Et déclenche les actions à effectuer
* Il transmet des messages au modèle
* Si nécessaire, il informe la vue de se mettre à jour
* Le contrôleur n'effectue aucun traitement
et ne modifie aucune donnée
L'architecture MVC (2/2)
* Conclusion
* Maintenance facilitée par le découplage vue(s)-modèle
* Utilisation des patrons Observateur, Médiateur et Stratégie
* Utilisé principalement pour les interfaces graphiques