MVC ou Model View Controller
Un motif de conception MVC définit un moyen d'organiser le code en fonction de chacune de ces parties:

Le modèle qui définit la logique métier et inclus tout ce qui concerne le comportement de l'application.
La vue représente l'interface avec laquelle l'utilisateur agit:
Le contrôleur est la partie du code appelant le modèle pour en récupérer les données qu'il transmet ensuite à la vue pour le rendu final.

Le modèle qui définit la logique métier et inclus tout ce qui concerne le comportement de l'application.
- Il encapsule le cœur fonctionnel de l'application, le domaine logique.
- Le traitement des données (la base de données) et la gestion des données
- L'interaction avec la base de données
- La garantie de l'intégrité des données
- Des méthodes pour mettre à jour la base de données: l'insertion, la suppression, la mise à jour et la récupération.
- La possibilité d'autoriser des vues partielles
- Ne génère aucune présentation
- Classes et fichiers stockés dans le répertoire lib/model/
La vue représente l'interface avec laquelle l'utilisateur agit:
- Présente les résultats renvoyés par le modèle
- Reçoit les actions de l'utilisateur: clic, sélection d'entrée, bouton, etc.
- N'effectue aucun traitement, juste affiche les résultats effectués
- Peut être conçu en html ou autre langage de présentation
Le contrôleur est la partie du code appelant le modèle pour en récupérer les données qu'il transmet ensuite à la vue pour le rendu final.
- Effectue le gestion des événements de synchronisation pour mettre à jour la vue ou le modèle et les synchronise
- Si une action nécessite un changement de données, le contrôleur demande la modification des données au modèle et avertit la vue que les données ont changé pour qu'elle se mette à jour.
- Il n'effectue aucun traitement, mais analyse la requète du client et appelle le modèle adéquat et renvoie la vue correspondant à la demande.
- Il gère les erreurs 404, 401.
- Il est matérialisé par les fichiers "actions.class.php" qui sont associés aux modules.
-
- Le client fait une demande au contrôleur. Ce contrôleur voit passer toutes les demandes des clients. C'est la porte d'entrée de l'application.
- Le contrôleur traite cette demande. Il peut avoir besoin de l'aide de la couche métier pour réaliser ce traitement.
- Le contrôleur reçoit une réponse de la couche métier. La demande du client a été traitée. Celle-ci peut appeler plusieurs réponses possibles.
- Un exemple classique est une page d'erreurs si la demande n'a pu être traitée correctement une page de confirmation
- Sinon le contrôleur choisit la réponse (= vue) à envoyer au client. Celle-ci est le plus souvent une page contenant des éléments dynamiques. Le contrôleur fournit ceux-ci à la vue.
- La vue est envoyée au client.
- Le Contrôleur est en quelque sorte le chef d'orchestre, il va analyser la requête du visiteur, effectuer les contrôles, puis il va appeler le Modèle concerné.
- Le modèle effectue toutes les requêtes SQL nécessaires pour récupérer les informations et les map dans un objet.
- Et pour terminer, le contrôleur passe les données du modèle à la vue concernée et retourne le rendu de la page au navigateur.
Publicité