Symfony

Symfony

BACKEND

Framework PHP full-stack développé par SensioLabs offrant une architecture modulaire basée sur des composants réutilisables. Design patterns solides (MVC, Dependency Injection), système de bundles extensible, ORM Doctrine puissant et écosystème riche pour construire des applications web scalables et maintenables.

Ce que tu vas apprendre

PHP moderne avec typage strict, attributs PHP 8+ et autoloading PSR-4

Architecture MVC avec controllers, routes et Twig template engine

Dependency Injection native avec autowiring et configuration YAML/XML/PHP

Doctrine ORM avec entities, repositories, migrations et DQL

Bundles réutilisables pour modularité et organisation du code

Symfony Console pour CLI commands et scripts automatisés

Security component pour authentication, authorization et firewall

Form component avec validation, CSRF protection et theming

Messenger component pour async/queue avec transports (RabbitMQ, Redis)

Testing complet (PHPUnit, functional tests, Panther pour E2E)

Sujets clés à maîtriser

Les concepts les plus importants pour comprendre cette techno et réussir tes entretiens

1

PHP : namespaces, autoloading PSR-4, traits, interfaces, typage strict PHP 8+

2

Symfony architecture : HttpKernel, Request/Response cycle, events, kernel listeners

3

Controllers : routing, annotations/attributes, request parameters, response types

4

Routing : YAML/annotations/attributes, route parameters, requirements, prefixes

5

Dependency Injection : services, autowiring, service container, compiler passes

6

Doctrine ORM : entities, annotations/attributes, associations (@OneToMany, @ManyToOne)

7

Doctrine repositories : custom queries, QueryBuilder, DQL (Doctrine Query Language)

8

Migrations : DoctrineMigrationsBundle, versioning, up/down migrations

9

Twig : template syntax, filters, functions, inheritance (extends, block), includes

10

Forms : FormType, form builders, validation constraints, custom form types

11

Validation : constraint annotations (@NotBlank, @Email), custom validators, groups

12

Security : authentication providers, voters, firewalls, role hierarchy, remember me

13

Events : EventDispatcher, event subscribers, kernel events (request, response, exception)

14

Serializer : normalization, denormalization, groups, custom normalizers, formats (JSON, XML)

15

Messenger : message handlers, transports, async processing, retry strategies

16

Console : commands (Command class), input/output, helpers, progress bars

17

HTTP Client : HttpClient component, requests, authentication, retry mechanism

18

Cache : cache pools, cache tags, adapters (Redis, APCu, Filesystem)

19

Bundles : bundle structure, extension class, configuration, third-party bundles

20

Testing : PHPUnit, WebTestCase, functional tests, fixtures, mocking

21

Performance : profiler, caching strategies, lazy loading, opcache, preloading PHP 8

22

API Platform : REST/GraphQL APIs on top of Symfony, serialization, filters, pagination

23

Deployment : Symfony CLI, environment variables (.env), Docker, composer optimize