Éditer sur GitHub

MVC

Problème

En l'absence d'un cadre, une application qui se complexifie à tendance à se transformer en un plat de spaghetti avec des composants qui font du rendu et des calculs.

Principe

Pour plus de modularité et de clarté, il convient de poser une séparation claire entre :

Cas des applications WEB

Les applications web ont des besoins spécifiques au traitement des requêtes HTTP. Généralement, le fonctionnement d'un framework MVC côté serveur sera le suivant :

Variantes côté serveur

Il existe de nombreux frameworks implémentant des variantes de ce concept dans différents langages :

Variantes côté navigateur

Une des tendance actuelle consiste à mettre en place des API REST renvoyant des données en JSON avec une génération du code HTML effectuée dans le navigateur en JavaScript.

Côté client, nous retrouverons des variantes du concept de MVC où l'idée est toujours de séparer le rendu de la manipulation des données :

Avantages de l'utilisation du MVC

Ressources