Projets scolaires

Projet Architecture MVC

Conception d'un site web dynamique structuré sans framework externe.

Projet scolaire PHP MVC POO Front Controller MySQL

Contexte

Maîtrise des fondamentaux Web

Ce projet visait à développer une application de gestion de contenus (CMS léger) en appliquant strictement le pattern Modèle-Vue-Contrôleur.

L'enjeu n'était pas seulement fonctionnel, mais surtout architectural : il fallait prouver que l'on pouvait organiser un code complexe de manière modulaire sans dépendre d'un framework tiers.

Ce travail permet de comprendre ce qui se passe "sous le capot" des outils modernes.

Aperçu de l'application

Objectifs

Partie 1 : Noyau & Routage

Création d'un Front Controller (`index.php`) et d'un routeur capable de mapper les URLs vers les méthodes de contrôleurs spécifiques. Gestion des sessions et de la configuration globale.

Partie 2 : Abstraction & Modèles

Développement de classes Modèles héritant d'une classe de base `Model` pour automatiser les requêtes SQL (Select, Insert, Update). Séparation des vues HTML via un système de templates.

Déroulement

Étape 1
Structure de dossiers

Organisation des dossiers `modele`, `vue`, `controleur` et `public`.

Étape 2
Le Routeur

Code du système de routage et des mécanismes de redirection automatique.

Étape 3
Logique Métier

Implémentation des contrôleurs et des modèles pour gérer les données dynamiques.

Étape 4
Système de Vues

Création d'un layout commun et intégration des vues spécifiques pour chaque action.

Documentation

La structure complète du projet et le code source sont accessibles ci-dessous.

Bilan

Pattern MVC

Maîtrise totale de la séparation des responsabilités.

Front Controller

Compréhension du point d'entrée unique et de la gestion des routes.

Code Propre (POO)

Utilisation avancée des classes pour un code réutilisable et évolutif.