MVC Pattern
PHP 🟢 JuniorDefinition
Pattern architectural separant Model (donnees/logique), View (affichage) et Controller (orchestration). Base de la majorite des frameworks PHP.
Analogie
Comme un restaurant : le cuisinier (Model), la presentation du plat (View), le serveur (Controller) qui coordonne.
Exemple de code
class UserController {
public function show(int $id): Response {
$user = $this->userRepo->find($id); // Model
return $this->render('user/show', [
'user' => $user // View
]);
}
}
Cas d'usage
Structure de base pour toute application web PHP avec separation des responsabilites.
Anti-pattern
Mettre des requetes SQL dans les vues ou de la logique HTML dans les modeles.