7/23/2019 Architecure N-Tiers et MVC
1/27
Architectures logiqueset
modles de conception
7/23/2019 Architecure N-Tiers et MVC
2/27
2/27
Architectures logiques etmodles de conception
Gnralits
Architecture n tiers
Modle MVC
7/23/2019 Architecure N-Tiers et MVC
3/27
3/27
Gnralits
En rgle gnrale, une application est dcoupe en 3couches d'abstraction :
a couche prsentation !"#M$
Gre les interactions utilisateur%machine
a couche traitements !couche mtier$ :
ocau& :
contrles e((ectus au ni)eau du dialogue a)ec l'"#M
Globau& :
'application elle*m+me
a couche donnes :
Gre le stocage et l'accs au& donnes
7/23/2019 Architecure N-Tiers et MVC
4/27
4/27
Gnralits
Chaque couche ne communique qu'a)ec lacouche qui lui est ad-acente.
/rsentation
0raitement
1onnes
7/23/2019 Architecure N-Tiers et MVC
5/27
5/27
Gnralits
Ces 3 couches peu)ent +tre imbriques ou rparties dedi((rentes manires entre plusieurs machinesph2siques!ni)eau&$ ou logiques.
ui)ant les contraintes, nous aurons plus ou moins deni)eau&.
4n parle d'architecture n*tiers
5emarque: ni)eau couche !tier la2er$
7/23/2019 Architecure N-Tiers et MVC
6/27
6/27
Architecture logique etmodles de conception
Gnralits
Architecture n tiers
Modle MVC
7/23/2019 Architecure N-Tiers et MVC
7/27
7/27
Architecture n tiers
6n tier !tage en (ran7ais$ reprsente l'aspectph2sique de l'architecture
"l s'agit d'un modle logique d'architecture
applicati)e qui )ise 8 modliser une applicationcomme un empilement de trois couches.
7/23/2019 Architecure N-Tiers et MVC
8/27
8/27
Architecture n tiers
Architecture 9 tier%3 la2ers !9 tage % 3couches$
es 3 couches se trou)ent sur la m+me
machine.
/rsentation
0raitement
1onnes
7/23/2019 Architecure N-Tiers et MVC
9/27
9/27
Architecture n tiers
Architecture tiers%3 la2ers
1eu& couches se trou)ent sur la m+memachine et la troisime est sur une
machine distante./rsentation
0raitement
1onnes
Client
er)eur
7/23/2019 Architecure N-Tiers et MVC
10/27
10/27
Architecture n tiers
Architecture 3 tiers%3 la2ers
es 3 couches se trou)ent sur 3 machinesdistinctes.
Client
er)eur de traitement
!e&: #00/$
er)eur de ;11!e&: 4racle$
/rsentation 0raitement 1onnes
7/23/2019 Architecure N-Tiers et MVC
11/27
11/27
Architecture n tiers
Architecture n tier%3 la2ers
es 3 couches se trou)ent sur n machinesdistinctes.
/rsentation 0raitement 1onnes
Client
er)eur detraitement
er)eurde ;11
er)eursapplicati(s
5partition de
la charge
7/23/2019 Architecure N-Tiers et MVC
12/27
12/27
Architecture logique etmodles de conception
Gnralits
Architecture n tiers
Modle MVC
/ t ti
7/23/2019 Architecure N-Tiers et MVC
13/27
13/27
Modle MVC
i le modle en 3 couches!prsentation,traitement, donnes$ permet destructurer et de modulariser les applications, lescontraintes de communication entre couches
peu)ent s'a)rer problmatiques. i des donnes sont mises 8 -our dans une base
de donnes, la couche prsentation ne pourramontrer ce changement que si l'utilisateur
inter)ient au ni)eau de la couche prsentation,qui inter)iendra sur la couche de traitement, etc.
/rsentation
0raitement
1onnes
7/23/2019 Architecure N-Tiers et MVC
14/27
14/27
Modle MVC
Model-View-Controller
Modle-Vue-Contrleur
Architecture et une mthode de conceptionqui organise l'inter(ace homme*machine!"#M$ d'une application logicielle.
Cette mthode a t mise au point en
9
7/23/2019 Architecure N-Tiers et MVC
15/27
15/27
Modle MVC
/rincipe:
"soler la donne de sa reprsentation
1istinguer la consultation de la modi(ication
7/23/2019 Architecure N-Tiers et MVC
16/27
16/27
Modle MVC
es interactions a)ec les donnes possdent troiscomposantes :
'accs au& donnes
6ne reprsentation 8 l'a((ichage e traitement des )nements pour s2nchroniser la
)ue et les donnes
Vue
Contrleur
Modle
7/23/2019 Architecure N-Tiers et MVC
17/27
17/27
Modle MVC
e modle n'est plus en couche, mais entriangle
7/23/2019 Architecure N-Tiers et MVC
18/27
18/27
Modle MVC
e modle
Offre des mthodes pour mettre jour lesdonnes .
Reprsentation des donnes manipules. Contient les donnes du programme sous
une forme comprhensible par la ou lesvues.
7/23/2019 Architecure N-Tiers et MVC
19/27
19/27
Modle MVC
e modle
Il peut avoir plusieurs vues et plusieurscontrleurs.
Il peut tre utilis sur ordre du contrleur. Il signale ses vues tous les changements de
contenu en leur envoyant un vnement uileur spcifie de se mettre jour.
7/23/2019 Architecure N-Tiers et MVC
20/27
20/27
Modle MVC
a )ue
Correspond l!interface avec lauellel!utilisateur interagit.
"rsente les rsultats renvoys par le mod#le. $lle n!effectue aucun traitement
Re%oit toutes les actions de l!utilisateur &clicde souris' slection d!une entre' boutons' etc(
et renvoie ces diffrents vnements aucontrleur.
7/23/2019 Architecure N-Tiers et MVC
21/27
21/27
Modle MVC
a )ue
$lle se met jour d#s u!elle re%oit un ordrede notification )
du contrleur.du mod#le.
*uand la notification vient du mod#le' elleva consulter le mod#le pour se rafficher de
mani#re correcte.
7/23/2019 Architecure N-Tiers et MVC
22/27
22/27
Modle MVC
e contrleur
Il prend en charge la gestion des vnementsde synchronisation pour mettre jour la vueou le mod#le et les synchroniser.
Il n!effectue aucun traitement' ne modifieaucune donne' mais analyse la reute duclient et se contente d!appeler le mod#leaduat et de renvoyer la vue correspondant la demande.
Il re%oit tous les vnements de l!utilisateuret enclenche les actions effectuer.
7/23/2019 Architecure N-Tiers et MVC
23/27
23/27
Modle MVC
e contrleur
Re%oit les vnements de l!interfaceutilisateur et les traduits )
$n changeant la vue s!ils agissent surle ct visuel &clic dans l!ascenseur dela fentre' ...(.
$n demandant un changement au
mod#le s!ils agissent sur le contenu&demande de +oom sur un graphiue'modification le diagramme en b,tonsen agissant dans la vue' ...(.
7/23/2019 Architecure N-Tiers et MVC
24/27
24/27
Modle MVC
E&emple de (rame>ors?utilisant ce modle
C4C4A !ob-ecti)e*C$
truts, >ing, @0 !AVA$
B0 !C$ Dend, 2m(on2 !/#/$
?:couche d'abstraction logiciel o((rant di)erses (onctionnalits et ser)ices.
7/23/2019 Architecure N-Tiers et MVC
25/27
25/27
Modle MVC
MVC est trs pratique :
paration "#M % traitement
/eut se r)ler lourd 8 mettre en place.
Multitude de contrleurs 8 implmenter. Chaque rame>or introduit des
)ariantes.
7/23/2019 Architecure N-Tiers et MVC
26/27
26/27
Modle MVC
MVC
M+me modle de conception, mais unseul contrleur qui se charge de redirigerla requ+te )ers le bon traitement!Action$.
Dend utilise ce principe
6n contrleur.
/lusieurs actions. 6ne )ue !par d(aut$par action.
7/23/2019 Architecure N-Tiers et MVC
27/27
27/27
Conclusion
/rsentation
0raitement
1onnes
Aspect logiciel
Modle en couche
MVC
Aspect ph2sique
Architecture n tiers
Top Related