MVC - activité
Objectif activité pratique
Section titled “Objectif activité pratique”- Ce familiariser avec le design pattern MVC
- Mettre en pratique la programmation objet
- Apprendre à «refactorer»
- Transformer une application «monolithique» ici un blog en une application MVC en créant un micro-framework MVC
- Se préparer à utiliser un framework MVC (laravel)
Prérequis avant de débuter l’activité
Section titled “Prérequis avant de débuter l’activité”PHP / Serveur / SGBD
Section titled “PHP / Serveur / SGBD”Une installation fonctionnelle de PHP, un serveur Web et un système de gestion de bases de données. Nous recommandons fortement l’utilisation de XAMPP
Si vous avez une ancienne installation de XAMPP, MAMP, LAMP, WAMP ou autre, veillez à mettre à jour. Vous devriez avoir PHP version 8.2 d’installé.
Si jamais vous n’arrivez pas à accéder aux bases de données SQLite, vérifiez l’installation des paquets sqlite3 et php-sqlite (surtout pour Linux)
Editeur de code
Section titled “Editeur de code”Nous recommandons :
- VSCode : https://code.visualstudio.com/
- L’extension VSCode PHP Intelephense de Ben Mewburn
- L’extension VSCode PHP Debug ainsi que XDebug ( Guide d’installation )
- Optionnellement, l’extension vscode-workspace-switcher, pratique pour créer et naviguer dans vos projets VSCode
- Recommandée, l’assistant IA Copilot, avec un compte gratuit pour les étudiants.
Cela dit, vous pouvez utiliser l’éditeur de votre choix : PHPStorm, Netbeans, Eclipse, etc.
Git en ssh
Section titled “Git en ssh”Suivre ce guide pour l’utilisation de github en ssh
Rappel fonctionnement du cycle HTTP Client / Serveur
Section titled “Rappel fonctionnement du cycle HTTP Client / Serveur”- Le client est le navigateur web (Firefox, Brave, Chrome, Safari, Edge, Opera, etc.)
- Le serveur web est un logiciel, installé sur une machine distante (ou bien localement pour effectuer du développement), qui permet de traiter les requêtes HTTP et de générer des réponses en conséquence
- Lorsque vous entrez une url dans un navigateur ou que vous cliquez sur un lien HTTP, vous effectuez une requête HTTP vers un serveur web (Voir DevTools -> Network)
- Le serveur, en fonction de sa configuration et de l’url demandée, va analyser la requête http :
- et renvoyer des fichiers statiques (html, css, javascript, images, pdf, etc.)
- ou exécuter des scripts serveurs (PHP, Python, Perl, Java, etc.) qui vont générer dynamiquement une réponse, souvent sous forme de HTML.
- Les scripts serveurs peuvent, entre autres, se connecter à des bases de données, manipuler des objets, variables, tableaux, effectuer des boucles et conditions, etc. Le résultat de l’exécution de ces scripts produit une chaîne de caractères (string), en général contenant du code HTML, qui va être renvoyée vers le client (le navigateur).
- De ces scripts serveurs, le client (navigateur) reçoit uniquement du HTML. Les navigateurs ne peuvent pas interpréter les langages serveurs comme PHP.
