Le MVC (Modèle-Vue-Contrôleur) est un patron d'architecture logicielle qui organise une application en trois parties distinctes : les données, leur affichage et la logique qui fait le lien entre les deux.
Chaque partie a un rôle précis :
- le modèle gère les données et les règles métier (lire et écrire en base, valider)
- la vue affiche les informations à l'utilisateur
- le contrôleur reçoit les actions de l'utilisateur, sollicite le modèle et choisit la vue à renvoyer
Cette séparation rend le code plus lisible, plus facile à tester et permet de modifier l'interface sans toucher à la logique métier. Le principe est né dans les années 1970 autour du langage Smalltalk.
C'est la structure de nombreux frameworks web côté serveur : Symfony, Laravel, Ruby on Rails, Spring MVC, ou Django sous une variante. Les interfaces front-end modernes s'en sont éloignées au profit d'architectures à base de composants.
Pourquoi ça compte quand on recrute
Le MVC fait partie des fondamentaux enseignés partout : le connaître n'est pas un critère. Le signal utile est la capacité à expliquer ses limites, par exemple des contrôleurs qui grossissent jusqu'à devenir illisibles, et comment structurer une application qui a dépassé ce modèle. C'est une bonne question d'entretien pour un développeur back-end confirmé.
