Formation en Développement: PHP 8 et Symfony 7.4 LTS - Parcours individuel de développement web - Ascent Formation
Retour aux formations
Développement

PHP 8 et Symfony 7.4 LTS - Parcours individuel de développement web

3 jour(s)21h

Description

PHP 8 et Symfony 7.4 LTS constituent aujourd'hui un socle moderne et durable pour le développement d'applications web professionnelles. PHP 8 apporte des évolutions majeures du langage (typage strict, attributs, énumérations, propriétés en constructeur, match), tandis que Symfony 7.4 LTS consolide une architecture éprouvée autour du conteneur de services, de Doctrine ORM, de la sécurité, des formulaires et d'un écosystème complet de composants réutilisables. Symfony 7.4 LTS, en tant que branche Long Term Support, garantit aux entreprises une base technique soutenue sur plusieurs années. Cette formation s'adresse à un développeur unique souhaitant maîtriser ce duo dans le cadre d'un projet professionnel. Le format individuel one-to-one permet d'adapter en permanence le rythme, la profondeur et les cas pratiques au contexte et au niveau réel de l'apprenant, et de couvrir en 3 jours un périmètre qui nécessite souvent 4 à 5 jours en format collectif. Le programme couvre PHP 8 dans ses aspects modernes, l'architecture Symfony 7.4, le développement de pages dynamiques avec Twig, la persistance avec Doctrine ORM, la gestion des formulaires, la sécurité, les services et l'injection de dépendances, ainsi que les bonnes pratiques de structuration d'une application Symfony professionnelle. Une ouverture est faite en fin de parcours sur les principes de migration vers Symfony 8.

Objectifs pédagogiques

  • Maîtriser les apports modernes de PHP 8 : typage, attributs, énumérations, syntaxes récentes
  • Comprendre l'architecture de Symfony 7.4 LTS et le rôle de ses principaux composants
  • Mettre en place un projet Symfony 7.4 et son environnement de développement
  • Développer des contrôleurs, routes et templates Twig pour une application web dynamique
  • Manipuler une base de données avec Doctrine ORM : entités, relations, requêtes
  • Construire et valider des formulaires Symfony robustes
  • Mettre en place les mécanismes essentiels de sécurité Symfony : authentification, autorisation, rôles et voters
  • Structurer une application autour du conteneur de services et de l'injection de dépendances
  • Identifier les principaux niveaux de tests d'une application Symfony : tests unitaires, fonctionnels et intégration
  • Comprendre les principes d'industrialisation d'un projet Symfony : environnements, logs, cache, tests et CI/CD
  • Comprendre les principes de migration Symfony 7.4 LTS vers Symfony 8 : dépréciations, compatibilité, stratégie d'évolution

Public concerné

Développeur web souhaitant prendre en main PHP 8 moderne et Symfony 7.4 LTS dans le cadre d'un projet professionnel
Profil unique en formation individuelle (one-to-one)

Prérequis

Bonne maîtrise d'un langage orienté objet ou expérience préalable en PHP recommandée
Maîtrise des fondamentaux HTML, CSS et JavaScript
Notions de bases de données relationnelles et de SQL
Familiarité avec l'utilisation d'un terminal en ligne de commande
Connaissance générale du modèle HTTP et de l'architecture web

Déroulé du programme

1

Jour 1 / PHP 8 moderne et fondamentaux Symfony 7.4 (7h)

7h
2

Module 1 / PHP 8 moderne et programmation orientée objet (3h)

3h
3

• Apports majeurs de PHP 8 : typage strict, types union, types nullable, retours typés

4

• Propriétés en constructeur (constructor property promotion)

5

• Attributs PHP : déclaration, lecture, usage dans Symfony

6

• Énumérations (enums) : déclaration, méthodes, cas d'usage

7

• Expression match : syntaxe et cas d'usage par rapport au switch

8

• Arguments nommés

9

• Programmation orientée objet : classes, interfaces, traits, héritage, polymorphisme

10

• Espaces de noms (namespaces) et autoloading PSR-4

11

Module 2 / Architecture Symfony 7.4 et premier projet (2h)

2h
12

• Positionnement de Symfony 7.4 LTS dans l'écosystème PHP

13

• Architecture du framework : kernel, bundles, composants, contracts

14

• Installation et configuration : Symfony CLI, Composer, Symfony Flex

15

• Structure d'un projet Symfony 7.4 : config, src, templates, public, var

16

• Le profiler et la web debug toolbar : outil clé du développeur Symfony

17

• Cycle de vie d'une requête HTTP dans Symfony

18

• Premier projet : création, lancement du serveur de développement

19

Module 3 / Routing, contrôleurs et templates Twig (2h)

2h
20

• Définition des routes : attributs PHP, et aperçu des alternatives de configuration YAML/PHP

21

• Paramètres de route : statiques, dynamiques, contraintes

22

• Contrôleurs : structure, retour de réponse, AbstractController

23

• Twig : syntaxe, variables, filtres, fonctions, contrôle de flux

24

• Héritage de templates : extends, blocks, include

25

• Organisation des templates Twig et réutilisation de fragments

26

• Cas pratique : développement de plusieurs pages dynamiques avec navigation

27

Jour 2 / Doctrine ORM, formulaires et persistance (7h)

7h
28

Module 4 / Doctrine ORM : entités et persistance (3h)

3h
29

• Architecture Doctrine : Entity Manager, Repository, requêtes

30

• Création d'entités : attributs PHP, types de données, contraintes

31

• Migrations : génération, exécution, rollback

32

• Opérations CRUD : persist, flush, find, findAll, remove

33

• Repositories personnalisés : méthodes de requête, QueryBuilder

34

• DQL : Doctrine Query Language, syntaxe et cas d'usage

35

• Cas pratique : modélisation et manipulation d'une base de données métier

36

Module 5 / Relations entre entités (1h30)

1h
37

• Relations OneToOne, OneToMany, ManyToOne, ManyToMany

38

• Configuration des relations : owning side et inverse side

39

• Cascade et orphan removal

40

• Stratégies de fetch : EAGER vs LAZY, optimisation des requêtes

41

• Cas pratique : modélisation d'un domaine avec plusieurs relations

42

Module 6 / Formulaires Symfony et validation (2h30)

2h
43

• Création de formulaires : FormBuilder, classes Form Type

44

• Types de champs : Text, Email, Choice, Entity, Collection, File

45

• Liaison entre formulaire et entité

46

• Validation : contraintes, groupes de validation, messages personnalisés

47

• Affichage et personnalisation des formulaires dans Twig

48

• Gestion de la soumission et traitement des données

49

• Cas pratique : formulaire complet de création et édition d'entité

50

Jour 3 / Sécurité, services, bonnes pratiques et industrialisation (7h)

7h
51

Module 7 / Sécurité et authentification (2h30)

2h
52

• Composant Security : architecture, firewall, authenticators

53

• Authentification par formulaire de login

54

• Hashage des mots de passe et User Provider

55

• Gestion des rôles et hiérarchie des rôles

56

• Voters : politiques d'autorisation personnalisées

57

• Sécurité des routes et des actions de contrôleur

58

• Cas pratique : mise en place d'une authentification complète avec gestion des droits

59

Module 8 / Services, injection de dépendances et événements (2h)

2h
60

• Conteneur de services : principes, configuration, autowiring

61

• Création de services personnalisés : logique métier, organisation

62

• Injection de dépendances : constructor injection comme pratique centrale, injection via attributs à utiliser avec discernement

63

• Configuration et paramètres : services.yaml, paramètres d'environnement

64

• EventDispatcher : événements Symfony, subscribers, listeners

65

• Cas pratique : extraction de logique métier dans un service dédié

66

Module 9 / Bonnes pratiques et ouvertures (1h30)

1h
67

• Structuration d'une application Symfony professionnelle : layers, conventions

68

• Gestion des environnements : dev, test, prod

69

• Variables d'environnement et fichiers .env

70

• Logging avec Monolog et journalisation des erreurs

71

• Cache HTTP et cache applicatif : principes et configuration

72

• Ouverture sur les tests : panorama PHPUnit avec Symfony Test Framework, niveaux de tests (unitaires, fonctionnels, intégration)

73

• Ouverture sur l'industrialisation : Composer scripts, Symfony Console, principes CI/CD

74

Atelier final de synthèse (1h)

1h
75

• Mise en perspective d'un projet Symfony complet incluant les concepts vus

76

• Discussion sur les pratiques et les cas d'usage du projet professionnel de l'apprenant

77

• Ouverture sur Symfony 8 : comprendre les principes de migration Symfony 7.4 LTS vers Symfony 8 (dépréciations, compatibilité, stratégie d'évolution)

78

• Recommandations personnalisées pour la mise en application immédiate

Informations

Durée

3 jour(s)

21h

Tarif

Sur demande