Le pattern MVC

Model / View / Controller

Sommaire

  • Les problématiques de conception
  • Le concept de Design Patterns
  • Le pattern MVC
  • Les principaux Frameworks PHP

Problématique de conception

Lorsque l'on créé un programme, on est confronté à des problèmes d'organisation et de conception.

 

On a trouvé différentes réponses aux questions couramment posées ...

Problèmes courants :

  • Comment rendre le code évolutif ?
  • Comment séparer les responsabilités  et les "métiers" ?
  • Comment éviter de se répéter ?

Le concept de "patron de conception" (Design Pattern)

Au fil des années, les développeurs ont créé des organisations du code qui les ont aidé à mieux développer et à rendre leur code plus propre, plus évolutif

Certains patterns sont très connus :

  • Le Singleton
  • La Factory
  • Le Décorateur
  • L'Observateur
  • Et évidemment le MVC

Le pattern MVC

But : séparer les diverses responsabilités

 

On cherche à séparer le code qui concerne les traitements et la logique, le code qui concerne l'accès et la gestion des données et le code qui concerne les affichages

On organisera le code de cette manière :

  • Les contrôleurs : ils concernent les traitements et contrôles
  • Les modèles : ils gèrent l'accès aux données
  • Les vues : elles gèrent les affichages

Le pattern MVC

Le controller (contrôleur)

  • Intercepte les actions de l'utilisateur
  • Contrôle les données soumises
  • Demande les données nécessaires ou agit sur les données grâce aux Models (modèles)
  • Affiche les données à l'utilisateur grâce aux Views (vues)

Dans le cadre du Web, le contrôleur ne devrait contenir aucune ligne de HTML, ni de SQL, uniquement des traitements

Le model (modèle)

  • Gère la connexion à la source de données
  • Permet la récupération de données
  • Permet la modification des données

Dans le cadre du Web, le model ne doit gérer que l'accès aux données et ne pas contenir ni HTML ni traitements des entrées utilisateurs

La vue (view)

  • Ne concerne que l'affichage des données
  • Utilise les données mises à disposition du controller
  • Peut utiliser les données mises à disposition pour le model

Dans le cadre du Web, la view ne doit gérer que l'affichage et ne contenir aucun traitement ni aucun SQL

Les Frameworks PHP

A voir en vidéo

Maintenant, vous connaissez MVC !

Allez y !

Le modèle MVC

By Lior CHAMLA

Le modèle MVC

Petite introduction au concept de modèle MVC : Model / View / Controller

  • 1,608