100% ont trouvé ce document utile (1 vote)
225 vues26 pages

Exposé MVC

un exposé detaillé sur l'architechture MVC

Transféré par

Ahmat Abakar
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PPTX, PDF, TXT ou lisez en ligne sur Scribd
100% ont trouvé ce document utile (1 vote)
225 vues26 pages

Exposé MVC

un exposé detaillé sur l'architechture MVC

Transféré par

Ahmat Abakar
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PPTX, PDF, TXT ou lisez en ligne sur Scribd

École Nationale Supérieur de TIC Antenne

d’Amdjarass
Filière : ASRS
Matière : Service Oriented Architecture and Web Service

EXPOSE
THÈME :
MODÈLE VUE
CONTRÔLEUR (MVC)
Présenté par :
Moussa Ali Matna
Abdoulaye Brahim Lamana
Nima Bokhit charfadine
Chargé de cours : Ing. Mahamat Ismael
PLAN DU TRAVAIL 2

INTRODUCTION
DÉFINITION
1. CONTRÔLEUR ( CONTROLLEUR)
2. MODÈLE (MODEL)
3. VUE (VIEW)
4. AVANTAGES
5. INCONVÉNIENTS
CONCLUSION
INTRODUCTION 1
A la base une technique de développement, le MVC est
modélisé et traduit en différents langages de programmation
(Java, PHP, #C...). Le MVC évolue et améliore par la même
occasion le cadre de travail des développeurs. Des frameworks
sont nés, apportant chacun leurs avantages et des
inconvénients. Des idées engendrant d'autres idées ont permis
le perfectionnement de cette technique.
Qu’est ce que le MVC ? Et a quoi sert-il ? Quels sont ses
avantages ainsi que ses inconvenants ?
DÉFINITIO
N
Le MVC, acronyme de Model View Controller (Modèle Vue
Contrôleur), est une technique de développement avancée
devenue un design pattern, qui découpe l'application en 3
couches principales, nommées Modèle, Vue et Contrôleur. La
distinction de ces couches :

 facilite l'organisation des sources du projet ;

 permet à chaque corps de métier de travailler en parallèle


sur les sources qui leur sont dédiées ;

 réduit l'impact des modifications pour minimiser les


risques d'erreur et les régressions.
2
1. CONTRÔLEUR (CONTROLLER)

Le Contrôleur est le point d'entrée de la demande de


l'utilisateur. Cette demande est identifiée par une
requête HTTP ou une URL, avec ou sans paramètre
envoyé en méthode GET ou POST. Il existe d'autres
méthodes telles que PUT, DELETE... mais qui ne sont
pas encore reconnues par certains navigateurs. C'est
la raison pour laquelle les méthodes GET et POST sont
les plus pratiquées par les frameworks.

3
Le Contrôleur est la couche centrale entre le Modèle
et la Vue. Son rôle consiste à coordonner les tâches à
exécuter, et à gérer les erreurs. Ces dernières peuvent
apparaître lors d'un contrôle de paramètres ou de
l'exécution d'un traitement par le Modèle. Le
Contrôleur est en fait responsable du bon déroulement
de la requête de l'utilisateur, de sa réception au renvoi
de la réponse à l'utilisateur.

4
Comme le nom « Contrôleur » l'indique, sa tâche
principale est de contrôler, comprenant la gestion et la
synchronisation des événements. Cela consiste à :

 réceptionner la requête de l'utilisateur ;

 effectuer un contrôle préliminaire des paramètres

de la requête avant de les utiliser dans un


traitement ;
 définir l'action à entreprendre selon la méthode

appelé : GET , POST, PUT, etc. ;


5
 exécuter le traitement indiqué par la méthode ;

 récupérer le résultat du traitement ;

 gérer les erreurs si elles existent ;

 communiquer le résultat du traitement à la Vue afin

qu'elle le formate ;
 récupérer les données formatées par la Vue ;

 renvoyer ces données à l'utilisateur.

6
Il faut bien comprendre que le Contrôleur ignore tout
de la partie métier, et ne doit contenir aucun code
métier. Il appelle les composants métiers
appartement à la couche Modèle pour effectuer le
traitement demandé, puis récupère le résultat ou
une erreur, et enfin l'envoie à la Vue. C'est tout ce
que le Contrôleur doit faire.

7
8
2. LE MODÈLE - MODEL
Le modèle correspond à la logique métier et
utilise des composants dits métiers. Le Modèle
désigne le traitement à exécuter demandé par
l'utilisateur. Il est appelé par le Contrôleur après
que les paramètres de la requête aient été une
première fois vérifiés. Ces derniers sont des
données d'entrée nécessaires à la bonne
exécution du processus métier.

9
Lorsque le traitement est terminé, le résultat est
retourné au Contrôleur afin que ce dernier puisse
le communiquer à la Vue.

Voici un exemple d'actions que peut effectuer le


Modèle :

 contrôler les paramètres d'entrée : les données

requises, le format des données ;


1
0
 mettre fin au processus du modèle si un

paramètre n'est pas valide. Générer une


exception ou retourner un code d'erreur ;

 vérifier la cohérences des données par rapport à

la règle de gestion, et terminer le traitement en


cas d'erreur ;

 débuter la transaction en vue d'une série

d'écritures/lectures en base de données ; 1


1
 traiter la requête de l'utilisateur avec lecture

et/ou écriture en base de données selon les


besoins fonctionnels ;

 stopper le traitement en cas d'erreur

inattendue. Par exemple lancer une exception


afin d'annuler la transaction par la suite ;
 valider ou annuler la transaction en fonction du

résultat du traitement ;
 retourner le résultat du traitement au
1
Contrôleur.
2
Le rôle du Modèle consiste à traiter l'information
reçue. Après le traitement, il peut envoyer ou
non un résultat, ou indiquer qu'une erreur est
apparue au cours de son exécution. C'est le seul
contrat que le Modèle doit honorer avec son
appelant : le Contrôleur

1
3
1
4
3. VUE (VIEW)
La Vue est la partie visible de l'iceberg. Son rôle
est d'afficher les données résultant du traitement
du Modèle. La Vue récupère ces informations
depuis le Contrôleur, formate les données si
besoin puis construit la présentation avant de la
renvoyer au Contrôleur Cette présentation, ou la
réponse à la requête doit être sous le format de
données attendu par l'utilisateur (client).
1
5
Par exemple :

le format HTML à destination des navigateurs ;


le format XML, JSON ou données sérialisées, destiné à
être (re)manipulé par d'autres processus ;
le format CSV pour lire les informations depuis un
tableur ;
Etc.
1
6
Tout comme le Modèle, la Vue a aussi un
engagement envers le Contrôleur. La Vue reçoit des
données brutes du Contrôleur. Ces données sont
manipulées dans le but d'obtenir une réponse
formatée attendue par le client.

Le Contrôleur récupère cette réponse. Il ne se


soucis guère du format ou de ce qu'elle peut bien
contenir. Le Contrôleur se contente tout simplement
de renvoyer le résultat de la Vue à l'utilisateur.
1
7
1
8
ARCHITECTURE MVC

1
9
4. AVANTAGES
Facile à maintenir, de par sa séparation obligatoire en

fichiers et logique ;

Le développement peut se faire à plusieurs niveaux

en parallèle (création des vues par un développeur


freelance front pendant qu’un développeur back travailler
sur les contrôleurs) ;

La décorrélation des vues et de la logique permet de

tester le code de manière plus simple et efficace, du2


moins en théorie.
0
5. INCONVÉNIENTS
 Il y a des difficultés à utiliser le MVC avec le développement

front-end moderne (utilisation de frameworks fronts orientés


composants) ;

 Le peu de souplesse laissé par le pattern peut poser des

problèmes si on souhaite utiliser des outils tiers ;

2  Les interactions entre les différents modèles et vues

1 peuvent être nombreuses et sont bidirectionnelles (la


modification d’un ou plusieurs modèles peut provoquer la mise à
jour d’une ou plusieurs vues, et inversement), ce qui complique
le développement dans certains cas d’utilisation.
CONCLUSION
L'architecture MVC offre un cadre normalisé pour le
développement, une bonne pratique devenue une philosophie
pour bien structurer une application, séparer les
problématiques, optimiser la coordination et la communication
entre les différents corps de métier (concepteur, développeur,
DBA, intégrateur...).

2
2
MERCI POUR VOTRE
ATTENTION

2
3
QUESTION
?
2
4

Vous aimerez peut-être aussi