Se connecter
Obtenir un accès complet à cette formation
Devenez un pro Symfony 5
Partie 1: Introduction à Symfony
1 - Bienvenue
2 - Introduction
3 - Les pré-requis
4 - Qu'est-ce que Symfony?
5 - Composer
6 - Les composants VarDumper et YAML
Partie 2: Hello Symfony!
7 - Introduction
8 - Créer un nouveau projet Symfony
9 - Challenge 1: Hello You!
10 - D'où provient la page d'accueil Symfony? [Uniquement pour les guerriers]
11 - De notre contrôleur à notre vue
12 - Challenge 2: Vous venez d'où?
13 - Variables et Filtres Twig
14 - Challenge 3: Passage de données
15 - Un meilleur workflow avec le client Symfony et le bundle Maker
16 - Challenge 4: Pourquoi se compliquer la vie?
17 - Layouts et Assets
18 - Challenge 5: Faites vous plaisir!
19 - Déploiement avec Heroku
20 - Challenge 6: J'ai hâte de voir votre application!
Partie 3: Projet Eventbrote
21 - Création du projet Eventbrote
22 - Challenge 7: KackStarter
23 - De notre contrôleur à notre vue!
24 - Challenge 8: Une pluie de projets
25 - Configuration de l'accès à une base de données MySQL
26 - Configuration de l'accès à une base de données SQLite
27 - Challenge 9: Où cachez-vous vos données?
28 - Création d'une entité Event
29 - Challenge 10: De quelle entité parlez-vous?
30 - Un grand pouvoir implique de grandes responsabilités
31 - Challenge 11: À chacun sa responsabilité!
32 - L'Entity Manager
33 - Challenge 12: Il est temps de démarrer vos projets!
34 - Le Service Container
35 - La Console PsySH
36 - Challenge 13: Où est ma console?
37 - Le Client Symfony ne finira jamais de nous épater!
38 - Actions CRUD Doctrine (Create Read Update Delete)
39 - Challenge 14: Vous êtes maître de votre console!
40 - Le M, le V et le C
41 - Challenge 15: Salut Mister MVC
42 - Twig Extensions
43 - Challenge 16: Des extensions à tous les niveaux
44 - Les migrations
45 - Challenge 17: Savez-vous migrer?
46 - Description des migrations
47 - Challenge 18: Pouvez-vous me décrire?
48 - Repopuler la base de données
49 - Challenge 19: Faites entrer les projets
50 - Affichage des informations restantes
51 - Challenge 20: Vous nous avez oublié?
Partie 4: Anatomie de Symfony
52 - Bundles, Container, Services, Kezako?
53 - Injection de dépendances
54 - Autowiring des arguments d'un contrôleur
55 - Principe de fonctionnement de l'autowiring
56 - Comment configurer un Bundle Symfony?
57 - Gestion des erreurs de configuration
58 - Et si on s’amusait à configurer le filtre number_format?
59 - Le Serveur VarDumper
60 - Parser du Markdown avec Twig MarkdownExtension
61 - Parser du Markdown avec KnpMarkdownBundle
62 - Symfony Cache: Introduction
63 - Symfony Cache: Les contrats Cache
64 - Faire du caching avec Symfony Cache
65 - Profiling du système de cache
66 - Faire du Caching uniquement en Prod
67 - Les paramètres à la rescousse
68 - Création d'un service MarkdownTransformer
69 - L'injection de dépendances
70 - Injection du service de caching
71 - Création d'un filtre Twig markdownify
72 - Une vraie description en Markdown
73 - Rien de magique!
74 - Extension Twig - Fonction Pluralize
75 - Challenge 21: Une description beaucoup plus...
76 - Quand c'est gratuit, je pense qu'il faudrait le dire!
77 - Extension Twig - Fonction format_price
78 - Refactoring avec la méthode isFree
79 - Challenge 22: Il est temps d'écrire vos propres fonctions!
80 - La page show
81 - La méthode createNotFoundException
82 - Netflix and Chill
83 - L'annotation @ParamConverter et les attributs de requête
84 - Challenge 23: Une page pour chaque projet
85 - Petite astuce à savoir
86 - L'utilité des noms de routes & La fonction helper path
87 - La méthode generateUrl
88 - Configuration d'une route pour la page d'accueil
89 - Challenge 24: Il est temps de construire vos propres routes :)
90 - Aide mémoire
Partie 5: TDD - Test Driven Development
91 - Introduction au Test Driven Development
92 - Installer PHPUnit
93 - Challenge 25: À chacun son PHPUnit
94 - Bien démarrer avec PHPUnit
95 - Challenge 26: Deux autres opérations arithmétiques
96 - Notre premier test fonctionnel!
97 - Challenge 27: Vos projets n'attendent plus que vous!
98 - Tester le cycle MVC au grand complet
99 - Challenge 28: Une entité Project
100 - Les transactions, une autre alternative!
101 - In-Memory Database, une histoire de performance!
102 - Challenge 29: Tout le monde aime la performance!
103 - Des messages d'erreurs plus explicites
104 - Challenge 30: Une meilleure compréhension de vos erreurs!
105 - Des tests plus élégants
106 - Challenge 31: La lisibilité, ça compte!
107 - Dumping du contenu de notre réponse
108 - Challenge 32: À chacun sa méthode dump
109 - Assertions sur la présence des autres attributs
110 - Challenge 33: On fait quoi des autres attributs?
111 - Le filtre truncate
112 - Challenge 34: On tronque de partout!
113 - Test de la page affichant les détails d'un évènement spécifique
114 - Challenge 35: Une page pour chaque projet
115 - Navigation entre nos deux pages
116 - Challenge 36: Les liens c'est fait pour ça
117 - Création d'une méthode utilitaire createEvent
118 - Challenge 37: Une méthode utilitaire createProject
119 - Le TDD dans toute sa splendeur!
120 - Challenge 38: Une fonction twig format_date
121 - Ajout de la méthode pluralize
122 - Challenge 39: 1 projet et non 1 projets
123 - Test fonctionnel: 404 "Event Not Found"
124 - Challenge 40: 404 Project Not Found
125 - Data Providers
126 - Challenge 41: C'est qui votre provider?
127 - Les fixtures
128 - Challenge 42: À chacun sa classe Fixtures
129 - Une montagne d'erreurs
130 - Challenge 43: À chacun sa pile d'erreurs
131 - Plus de randomness avec le bundle Faker
132 - Challenge 44: Des projets concrets
133 - Notre première requête customisée
134 - Challenge 45: Mister QueryBuilder
135 - Ajout d'un système de pagination des évènements
136 - Challenge 46: Place à la pagination
137 - Dites bonjour à la commande assets:install
138 - Une description en Markdown
139 - Et si on réglait notre petit problème de troncature avec CakePHP?
140 - Custom Faker Provider
141 - Repassons au vert!
142 - Nouveaux tests fonctionnels pour la page de listing
143 - Comment tester les repositories Doctrine?
144 - Refactoring: EventFactory et RefreshDatabase
145 - Test unitaire de MarkdownExtension (Test doubles: Dummies, Stubs, Mocks)
147 - Les bonnes pratiques sont avant tout des recommandations
148 - Configuration d'environnements
149 - Services publics vs Services privés
150 - Conteneur spécial
151 - Browser Testing vs. Endpoint Testing
152 - Symfony Panther: Une librairie de Browser Testing et de Web Scrapping pour PHP [1/2]
153 - Symfony Panther: Une librairie de Browser Testing et de Web Scrapping pour PHP [2/2]
154 - Intégration de Symfony Panther à notre projet
155 - Refactoring
Partie 6: Gestion de formulaires
156 - Formulaire de contact: Méthode classique
157 - Refactoring: Formulaire de contact à la Symfony
158 - Pourquoi s'arrêter en si bon chemin?
159 - Inférence de types de champs et Bonnes pratiques
160 - Des labels et des placeholders
161 - Populer les données d'un formulaire
162 - Les classes ou types de formulaires
163 - La méthode handleRequest en profondeur
164 - Inspection des formulaires avec le Profiler
165 - Passage d'options customisées à notre type de formulaire
166 - L'option data_class
167 - Les fonctions Twig form_*
168 - Variables de formulaire
169 - Les petits caprices de l'option required
170 - Créer une commande Symfony CleanDatabaseCommand
171 - Envoi de mails avec Symfony
172 - Comment tester les formulaires avec Symfony?
173 - Formulaire d'édition d'évènement
174 - Formulaire de création d'évènement
Partie 7: Layouts & Assets
Partie 8: Les repositories en profondeur
Partie 9: La validation de données
Partie 10: Les relations avec Doctrine
Partie 11: Intégration continue (CI) & Déploiement continu (CD)
Partie 12: Bonus
L'utilité des noms de routes & La fonction helper path
Contenu verrouillé
Acheter cette formation afin de débloquer ce contenu
Si vous ne l'avez pas déjà fait,
veuillez vous connecter
.