Aller au contenu

Construire avec Edu Framework

Cette section vous guide, étape par étape, de votre première page jusqu'à une application complète : formulaire, CRUD, API, commande CLI et tests. Chaque étape est l'occasion d'apprendre une notion que l'on retrouvera ensuite telle quelle dans un framework professionnel comme Symfony.

Les pages sont regroupées en quatre thèmes, avec pour chacune ce que l'on construit et la notion travaillée.

  • Comprendre


    Le concept d'architecture MVC et l'arborescence d'un projet Edu Framework, avant d'écrire la moindre ligne.

    Les fondations

  • Construire


    Une page, un formulaire protégé, le CRUD d'une entité, une API JSON et une commande CLI.

    Construire pas à pas

  • Tester


    Vérifier automatiquement le bon fonctionnement de son code avec PHPUnit.

    Tester son application

  • Approfondir


    La requête HTTP, les données, les routes, les erreurs, la barre de debug et le profiler.

    Approfondir

Comprendre les fondations

Avant de débuter, vous devez comprendre les points suivants :

Page Ce que l'on apprend
Le concept d'architecture MVC Séparer la logique (controller), les données (modèle) et l'affichage (vue), autour d'un cycle requête / réponse
L'arborescence du projet Savoir où se trouvent les controllers, les templates, la configuration et les fichiers publics

Construire pas à pas

Suivez les étapes dans l'ordre : chacune s'appuie sur la précédente.

Étape Ce que l'on construit Ce que l'on apprend
1. Construire une page Un controller, sa route et son template Twig Associer une URL à un controller, générer du HTML avec Twig
2. Construire un formulaire Un formulaire envoyé en méthode POST Lire les données envoyées avec l'objet Request
3. Protéger un formulaire (CSRF) Un jeton CSRF dans le formulaire Se protéger contre la falsification de requête inter-sites
4. Construire le CRUD La liste, l'ajout, la modification et la suppression d'une ville Entités, repositories et requêtes SQL préparées
5. Construire une API Une API JSON documentée au format OpenAPI Codes de statut HTTP, format JSON, documentation d'API
6. Construire une commande CLI Une nouvelle commande bin/edu Automatiser une tâche en ligne de commande

Tester son application

Page Ce que l'on apprend
Tester son application (tests unitaires) Écrire et lancer des tests PHPUnit, tester plusieurs cas avec un DataProvider, tester un repository et un controller

Approfondir le framework

Après une première prise en main, ces pages détaillent les briques utilisées dans les étapes précédentes.

Page Ce que l'on apprend Dans Symfony
Request - La gestion des requêtes HTTP Lire les paramètres, la méthode HTTP, les en-têtes et les fichiers envoyés Request de HttpFoundation
DatabaseService - La gestion des données Se connecter à une base MySQL, MariaDB ou SQLite Doctrine DBAL
Route - Générer une URL par le nom Ne jamais écrire une URL « en dur » dans le code ou les templates path(), generateUrl()
Les erreurs HTTP Les codes 403, 404, 405 et 500, et la personnalisation des pages d'erreur HttpException, templates d'erreur
La barre de debug et le profiler Analyser une requête, ses requêtes SQL et ses performances Web Debug Toolbar et Profiler

Voir toutes les fonctionnalités

La page Les fonctionnalités présente l'ensemble des briques du framework et leur équivalent dans Symfony.