1
PLAN:
C’EST QUOI MVC?
Historique
Architecture MVC
Avantages et Inconvénients
CONCLUSION
2
C’EST QUOI MVC?
 C'est un design pattern (orienté objet), c'est à dire un concept
d'architecture logicielle. Il permet de séparer l’affichage des
informations, les actions de l’utilisateur et l’accès aux données.
3
HISTORIQUE
 Elaboré par Trygve Reenskaug en 1979 au Xerox PARC
 Dédié initialement au langage Smalltalk-80 framework
 Utiliser pour Apple interfaces (Lisa and Macintosh), formalise par Steve Burbeck
 Posséde différentes interprétations et implantations
 2014: MVC rejoint le réseau des partnaires Acano
 * MVC mobile vidéocommunication GmbH
 2015: MVC atteint le plus haut degré de spécialisation pour la visioconférence & la télé présence
 2016: La certification MVC est renouvelée pour la visioconférence et téléprésence Polycom
4
Architecture logique du Pattern MVC
Navigateur
ModelsViews
Controllers
(1)
(2) (3)
(4)
(5)
5
MODEL
 Représente la partie de l’application qui exécute la logique métier. Cela
signifie qu’elle est responsable de récupérer les données, de les convertir
selon des concepts chargés de sens pour votre application, tels que le
traitement, la validation, l’association et beaucoup d’autres tâches
concernant la manipulation des données.
• Données de l’application
• Méthodes manipulant ces données
• Stockage et extraction de la BD
6
VIEW
 cette partie se concentre sur l'affichage
 s’occupe des interactions avec l’utilisateur : présentation, saisie et validation
des données
 Elle est responsable de retourner une réponse avec l’aide mutuelle des Model
et Vue.
7
CONTROLLER
 gère la dynamique de l’application. Elle fait le lien entre l’utilisateur
et le reste de l’application
 C’est le manager qui a pour mission que toutes les ressources
souhaitées pour accomplir une tâche
• Accès aux données à partir du modèle
• Affichage des données dans les vues
• Intermédiaire entre plusieurs vues et modèles
• Observe les changements du modèle et les transmet à la vue
8
OU ON PEUT UTILISER MVC?
 MVC est appliquer sur tout les systèmes et les technologies (Java, Ruby,
Python, Perl, Flex, SmallTalk, Net, C++,...)
9
Exemples d’architecture MVC
 Pour Android:
• View = layout, resources and built-in classes like Button derived
from android.view.View.
• Controller = Activity
• Model = the classes that implement the application logic
10
 Pour IOS
 il utilise terminologie différente, mais généralement les mêmes concepts et séparation .
11
 Pour Windows phone
• Il est très facile de rendre son application web compatible avec les terminaux
mobiles avec ASP.NET MVC,
12
13
Les fichiers sont organisés, on sait où trouver ce qu'on cherche.
Le code est modulaire, et facilement réutilisable(conception claire et efficace)
Il est aisé de greffer du code sur celui déjà existant.
Un gain de temps de maintenance et d’évolution du site
Une plus grande souplesse pour organiser le développement du site entre
différents développeurs pour travailler sur un même projet en parallèle
AVANTAGES
INCONVÉNIENTS 14
Demande la connaissance des multiples technologies
Si le code de Controller modifier il faut recompiler class et redéployer
l’application
Le MVC se révèle trop complexe pour de petites applications.
Le temps accordé à l’architecture peut ne pas être rentable pour le projet.
Le MVC se révèle trop complexe pour de petites applications, le temps
accordé à l’architecture peut ne pas être rentable pour le projet.
CONCLUSION
 Pour conclure, L’architecture MVC est une solution très intéressante et
très puissante, à mettre en œuvre dans de grands projets de préférence.
 Le MVC favorise le développement et la maintenance du code. Sur de
gros projets et/ou avec de grandes équipes de développements,
l’application d’un tel modèle de conception se révèle très performant. Il
existe aujourd’hui des frameworks très avancés qui se basent sur le MVC.
L’utilisation de ces frameworks facilite sa mise en place et cadre sa
réalisation.
15
ERCI

Modele mvc

  • 1.
  • 2.
    PLAN: C’EST QUOI MVC? Historique ArchitectureMVC Avantages et Inconvénients CONCLUSION 2
  • 3.
    C’EST QUOI MVC? C'est un design pattern (orienté objet), c'est à dire un concept d'architecture logicielle. Il permet de séparer l’affichage des informations, les actions de l’utilisateur et l’accès aux données. 3
  • 4.
    HISTORIQUE  Elaboré parTrygve Reenskaug en 1979 au Xerox PARC  Dédié initialement au langage Smalltalk-80 framework  Utiliser pour Apple interfaces (Lisa and Macintosh), formalise par Steve Burbeck  Posséde différentes interprétations et implantations  2014: MVC rejoint le réseau des partnaires Acano  * MVC mobile vidéocommunication GmbH  2015: MVC atteint le plus haut degré de spécialisation pour la visioconférence & la télé présence  2016: La certification MVC est renouvelée pour la visioconférence et téléprésence Polycom 4
  • 5.
    Architecture logique duPattern MVC Navigateur ModelsViews Controllers (1) (2) (3) (4) (5) 5
  • 6.
    MODEL  Représente lapartie de l’application qui exécute la logique métier. Cela signifie qu’elle est responsable de récupérer les données, de les convertir selon des concepts chargés de sens pour votre application, tels que le traitement, la validation, l’association et beaucoup d’autres tâches concernant la manipulation des données. • Données de l’application • Méthodes manipulant ces données • Stockage et extraction de la BD 6
  • 7.
    VIEW  cette partiese concentre sur l'affichage  s’occupe des interactions avec l’utilisateur : présentation, saisie et validation des données  Elle est responsable de retourner une réponse avec l’aide mutuelle des Model et Vue. 7
  • 8.
    CONTROLLER  gère ladynamique de l’application. Elle fait le lien entre l’utilisateur et le reste de l’application  C’est le manager qui a pour mission que toutes les ressources souhaitées pour accomplir une tâche • Accès aux données à partir du modèle • Affichage des données dans les vues • Intermédiaire entre plusieurs vues et modèles • Observe les changements du modèle et les transmet à la vue 8
  • 9.
    OU ON PEUTUTILISER MVC?  MVC est appliquer sur tout les systèmes et les technologies (Java, Ruby, Python, Perl, Flex, SmallTalk, Net, C++,...) 9
  • 10.
    Exemples d’architecture MVC Pour Android: • View = layout, resources and built-in classes like Button derived from android.view.View. • Controller = Activity • Model = the classes that implement the application logic 10
  • 11.
     Pour IOS il utilise terminologie différente, mais généralement les mêmes concepts et séparation . 11
  • 12.
     Pour Windowsphone • Il est très facile de rendre son application web compatible avec les terminaux mobiles avec ASP.NET MVC, 12
  • 13.
    13 Les fichiers sontorganisés, on sait où trouver ce qu'on cherche. Le code est modulaire, et facilement réutilisable(conception claire et efficace) Il est aisé de greffer du code sur celui déjà existant. Un gain de temps de maintenance et d’évolution du site Une plus grande souplesse pour organiser le développement du site entre différents développeurs pour travailler sur un même projet en parallèle AVANTAGES
  • 14.
    INCONVÉNIENTS 14 Demande laconnaissance des multiples technologies Si le code de Controller modifier il faut recompiler class et redéployer l’application Le MVC se révèle trop complexe pour de petites applications. Le temps accordé à l’architecture peut ne pas être rentable pour le projet. Le MVC se révèle trop complexe pour de petites applications, le temps accordé à l’architecture peut ne pas être rentable pour le projet.
  • 15.
    CONCLUSION  Pour conclure,L’architecture MVC est une solution très intéressante et très puissante, à mettre en œuvre dans de grands projets de préférence.  Le MVC favorise le développement et la maintenance du code. Sur de gros projets et/ou avec de grandes équipes de développements, l’application d’un tel modèle de conception se révèle très performant. Il existe aujourd’hui des frameworks très avancés qui se basent sur le MVC. L’utilisation de ces frameworks facilite sa mise en place et cadre sa réalisation. 15
  • 16.

Notes de l'éditeur

  • #3 nous avons essayer de repartir notre travail selon une methodologie bien étudié Donc notre plan sera come suit:
  • #6 1 - L’utilisateur envoie une requête HTTP 2 – Le contrôleur appelle le modèle, celui-ci va récupérer les données 3 – Le modèle retourne les données au contrôleur 4 - Le contrôleur décide de la vue à afficher, va l’appeler 5 – Le code HTML de la vue est envoyé à l’utilisateur pour qu’il puisse naviguer normalement