Sortir du cadre

@chalas_r

Robin Chalas

@chalas_r
chalasr
les-tilleuls.coop

Defaults?

@chalas_r
@chalas_r

Defaults?

 Modifier la structure racine ?

@chalas_r

⚠️ Sauf config/

@chalas_r

 Modifier la structure racine ?

@chalas_r

👎 Nope

Bonne idée ?

Pourquoi pas ?

@chalas_r
  • Structure standard

  • Peu d'intérêt à dévier 🤷‍♂️

* Sauf contraintes/besoin infra 

Dossiers / Fichiers supplémentaires

@chalas_r

👍-ish

 ⚠️ À ne pas tomber dans l'excès 
 Aussi: Documentation, cohérence inter-projets
@chalas_r

📁 config/

@chalas_r

📁 config/packages/

  • Configuration des bundles core et tierces
  • Rempli et mis à jour par Symfony Flex
  • Structure non vouée à être modifiée (plus nécessaire )
  • Fichiers voués à être modifiés en accord avec les besoins du projet
@chalas_r

Recettes versionnées

@chalas_r

Mise à jour des recettes

@chalas_r

Mise à jour des recettes

@chalas_r

Faciliter la MàJ des recettes

💡Éviter les changements cosmétiques niveau config.
Changer seulement ce qui est utile/nécessaire.

@chalas_r

📁 config/routes/

@chalas_r

📁 config/routes/

  • Reference les fichiers de routing des bundles core et tierces
  • Managé par Symfony Flex
  • Structure et contenu non voués à être modifiés
@chalas_r

📁 config/*: Fichiers

@chalas_r

config/bundles.php

  • Active les bundles core et tierces en fonction de l'environnement
  • Managé par Flex
  • Pas vocation à changer
@chalas_r

config/preload.php

Pas sujet à modification.

Eventuellement voué à disparaître ...

@chalas_r

Fichier routes.yaml

Sujet à changement selon l'architecture du code

@chalas_r

config/services.yaml

Structure et contenu voué à évoluer significativement

@chalas_r

📁 src/

@chalas_r
@chalas_r
@chalas_r
@chalas_r
@chalas_r
@chalas_r
@chalas_r

Bonne question ...

@chalas_r

Merci !

Sortir du cadre - Forum PHP 2022

By Robin Chalas

Sortir du cadre - Forum PHP 2022

Symfony, comme tout framework, vient avec un ensemble de lignes directrices et autre "defaults". Structure des répertoires, fichiers d'amorçage, packages installés, configuration automatique, conventions de codage... toutes ces choses que l'on obtient lorsque l'on crée un nouveau projet. Quel est le but de ces defaults ? Doit-on s'y tenir ? Ou pouvons-nous nous en écarter ? Et si on choisit d'en dévier, à quel coût ? Est-ce que cela vaut encore la peine d'utiliser un framework ? Dans cette présentation, nous passerons en revue les différents axes sur lesquels Symfony nous fournit des defaults, en passant par un voyage dans le temps visant à comprendre comment Symfony a évolué sur le sujet et comment il se positionne par rapport aux autres frameworks PHP. A partir de cet état des lieux, nous verrons un ensemble de préconistations visant à déterminer quelles sont les lignes dont nous sommes susceptibles de nous écarter, pourquoi et à quel prix. Avec pour objectif d'exploiter au mieux notre framework de prédilection tout en mettant nos besoins métier au centre de nos applications.

  • 2,306