Définition

L’architecture MVC ( Model-View-Controller), est l’une des architectures logicielles les plus utilisées pour les applications Web. Elle permet de créer une application web pour bien gérer la structuration d’un projet en trois parties.

Elle se compose de trois modules : modèle, vue, contrôleur

Composition de l’architecture MVC

  • Modèle : un noyau de l’application qui gère les données, permet de récupérer les informations dans la base de données, de les organiser pour qu’elles puissent ensuite être traitées par le contrôleur.
  • Vue : composant graphique de l’interface qui permet de présenter les données du modèle à l’utilisateur.
  • Contrôleur : composant responsable des prises de décision, gère la logique du code qui prend des décisions, il est l’intermédiaire entre le modèle et la vue.
MVC
MVC

Quelques avantages

Les avantages du kit 
  • Meilleure organisation du code
  • Diminution de la complexité lors de la conception
  • Conception claire et efficace grâce à la séparation des données de la vue et du contrôleur
  • Possibilité de réutilisation de code dans d’autres applications
  • 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
  • Plus de facilité pour les tests unitaires

Quelques inconvénients

  • Augmentation de la complexité lors de l’implantation;
  • Éventuel cloisonnement des développeurs;
  • Architecture complexe pour des petits projets;
  • Le nombre important de fichiers représente une charge non négligeable dans un projet.
A retenir

A partir du schéma ci dessus , on peut retenir que le MVC fonctionne comme suit:

Le contrôleur va demander au modèle les données, les analyser, prendre des décisions et renvoyer le texte à afficher à la vue.

En somme, la création d‘applications utilisant l’architecture MVC peut s’avérer lente et coûteuse, l’utilisation de Frameworks est recommandé pour faciliter le travail et réduire le temps de réalisation tout en profitant des avantages qu’offre cette architecture.

Toutefois il y a pas mal de Frameworks qui l’utilisent comme: ASP.NET MVC, Ruby on rails, Laravel, Angular Js, Backbone, React …

Sitan Dramé, Stagiaire en Développement Web à DEFAR Sci

Category: Développement web

laissez un commentaire