3.5.2 Organisation du code : le design pattern MVC
3.5.2.1 Fonctionnement du MVC
Dans le cadre d'une architecture MVC, les données sont
gérées par le modèle, la présentation par la vue et
l'ensemble est coordonné par les contrôleurs. Le graphe 3.4
présente les interactions entre les composantes. Le contrôleur
reçoit la requête provenant du client et l'analyse puis la
transmet ensuite au modèle. Il récupère ensuite les
informations fournies par le modèle et les transmet à la vue pour
présentation à l'utilisateur. Dans la pratique, le
contrôleur frontal est représenté par un fichier
index.php.
Graphique 3.4 -- Présentation du design
pattern MVC
Réponse
Vue
Station cliente
Contrôleur
Requette
Modèle
Source: Nos recherches
3.5.2.2 Rôle des composantes
Le modèle : Le modèle
représente le coeur de l'application : traitements des données,
interactions avec la base de données, etc. Il décrit les
données manipulées par l'application. Il regroupe la gestion de
ces données et est responsable de leur intégrité. La base
de données sera l'un de ses composants. Le modèle comporte des
méthodes standards pour mettre à jour ces données
(insertion, suppression, changement de valeur). Il offre aussi des
méthodes pour récupérer ces données.
La vue : Sa première tâche est
de présenter les résultats renvoyés par le modèle.
Sa seconde tâche est de recevoir les requêtes de la part de
l'utilisateur. Celles-ci sont envoyées au contrôleur. La vue
n'effectue pas de traitement, affiche juste les résultats des
traitements effectués par le modèle et interagit avec
l'utilisateur.
Le contrôleur : Le contrôleur
prend en charge la gestion des événements de synchronisation pour
mettre à jour la vue ou le modèle. Il reçoit toutes les
requêtes de l'utilisateur et enclenche
Brice Baem BAGOA, Elève Ingénieur des
Travaux Statistiques Page 42
3.6. Les sources de données
les actions à effectuer. Si une action nécessite
un changement des données, le contrôleur demande la modification
des données au modèle, et ce dernier notifie la vue que les
données ont changé pour qu'elle se mette à jour. Il
analyse la requête du client et se contente d'appeler le modèle
adéquat et de renvoyer la vue correspondant à la demande.
|