> For the complete documentation index, see [llms.txt](https://cours.davidannebicque.fr/symfony/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cours.davidannebicque.fr/symfony/semestre-4/contexte-du-s4.md).

# Contexte du S4

## Dans la continuité du S3

{% hint style="warning" %}
Tout ce qui a été vu et fait dans Symfony en S3 est considéré comme acquis (donc ne pas hésiter à réviser : le support est ici : <https://docs.mmi-troyes.fr/books/wr319d-wra319d>).

**Quelques rappels seront fait, mais on ne revient pas sur les bases de l'installation, de la manipulation contrôleurs/vue, des entités, de la sécurité ou encore la configuration de docker qui doit maintenant être acquise.**
{% endhint %}

## Enjeux du S4

Approfondir un ensemble de concepts (personnalisation des formulaires, événements, webpack, repository, ...), qui facilitent le développement, permettent de garder un code "propre" et "bien rangé".

Cette ressource sera en lien avec les ressources WR406/WRA406 (développement front) et la SAE WS401.

L'objectif est de produire un *workflow* complet d'une application web "moderne".

<figure><img src="https://1352327723-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOlCPtqgEYET7rbnfjpAg%2Fuploads%2FtxVqQa6GUnSWBU42Exbd%2Fschema-S4.png?alt=media&amp;token=09c42f49-6c5f-4636-bdb3-b7dbdd3e8b3a" alt=""><figcaption><p>Organisation des cours du S4</p></figcaption></figure>

## Evaluation de ce module

Evaluation régulières en fin de séance (QCM) + TP Noté (QCM associé) + QCM de cours (30 mars).

## Les chapitres de la ressource

1. [Notion de service : exemple du mail](/symfony/semestre-4/seance-1-notion-de-service-exemple-du-mail.md) : Correction de la dernière séance de S3 et rappels sur les services
2. [Filtres twig](/symfony/semestre-4/seance-2-filtres-twig.md) : Personnalisation des filtres Twig
3. [AssetMapper](/symfony/semestre-4/seance-3-asset-mapper.md) : Gestion des assets (CSS, JS, images, ...)
4. [Mise en place d'un panier](/symfony/semestre-4/seance-4-panier.md) : Utilisation des services et des sessions
5. [Event Dispatcher/Listener](/symfony/semestre-4/seance-5-events.md) : Gestion des événements
6. [Localisation de l'application](/symfony/semestre-4/seance-6-localisation.md) : Gestion des langues
7. [Requetes personnalisés (repository)](/symfony/semestre-4/seance-7-repository-et-requetes.md) : Utilisation des repositories
8. [Formulaires](/symfony/semestre-4/seance-8-formulaires.md) : Personnalisation des formulaires
9. [Formulaires et validations](/symfony/semestre-4/seance-9-validation-form-event.md) : Validation des formulaires
10. [Sécurité et voters](/symfony/semestre-4/seance-10-voters.md) : Gestion des droits
11. [Séance révision](/symfony/semestre-4/seance-11-revisions.md) : TP de révision
12. [TP Noté (3 heures)](/symfony/semestre-4/seance-12-13-tp-note.md) : TP noté
13. [Evaluation écrite](/symfony/semestre-4/seance-14-evaluation.md) : Evaluation écrite
