Design patterns - mvc pattern

Preview:

Citation preview

MVC PatternDesign Patterns

SIDAOUI Abdelfahem Email: Abdelfahem20@gmail.com http://www.sidaoui.tk

réalisé par:

Le patron modèle-vue-contrôleur (en abrégé MVC ) est un modèle destiné à répondre aux besoins des applications interactives en séparant les problématiques liées aux différents composants au sein de leur architecture respective.

Introduction

Décomposer une interface graphique en trois parties distinctes.

Schéma calqué sur le traitement classique d'un programme

Pourquoi le MVC ?

Les trois parties du MVC sont :

Contrôleur : agit sur demande de l'utilisateur et modifie le modèle.

Modèle : contient les données du programme sous une forme compréhensible par la vue, notifie la vue des changements.

Vue : composant graphique affichant le modèle.

C'est quoi le MVC ?

Séparation claire entre les données du programme et la partie graphique affichant les données.

• Le modèle montre les données à la vue. • La vue est le composant graphique. Evite le stockage des données à plusieurs

endroits Possibilité pour le modèle d'informer la vue

des modifications incrémentalement.

Avantage du MVC

Représentation du modèle MVC

L’utilisateur interagit avec la vue, en saisissant une valeur ou en cliquant sur un bouton, par exemple.

Le contrôleur reçoit les actions de l’utilisateur, les interprète et demande au modèle de modifier son état.

Relations Modèle-Vue-Contrôleur

Le modèle informe la vue de son changement

d’état, suite à une modification liée à un clic de bouton ou même à une modification interne.

La vue demande son état au modèle, que ce soit suite à une information du modèle ou du contrôleur

Relations Modèle-Vue-Contrôleur

Le design pattern MVC permet de séparer la partie métier du logiciel de la partie interface graphique.

Il peut y avoir : Plusieurs vues pour un même modèle. Plusieurs contrôleurs pour une même vue.

Les changements sur le modèle sont notifiés (évènements) après un enregistrement au

préalable.

En résumé

Le paradigme MVC regroupe les fonctions nécessaires en trois catégories :

un modèle (modèle de données) ; une vue (présentation, interface

utilisateur) ; un contrôleur (logique de contrôle,

gestion des événements, synchronisation).

Conclusion

Merci pour votre attention

Recommended