Bonjour à tous,

J'ai vue beaucoup de recommandations et d'exemples différent d'architectures.

J'aimerais me baser sur l'architecture de "Sylius":

src/Sylius/
Bundle/
Monbundle1Bundle
Monbundle2Bundle
Monbundle...Bundle
Component/
Monbundle1
Monbundle2
Monbundle...

Il y a en tout 42 Bundle, dont : AdminBundle, WebBunble, ApiBundle, InstallerBundle, SettingsBundle, ThemeBundle... (on comprend la structure, chacun sa tache, avec chacun son dossier controler, ressources, ...)

Le dossier 'Component' contient les fonctions indépendantes du Framework.

  • D'autres sources disent de regrouper dans un seul Bundle et de multiplier les controler :

AppBundle
Entity
Entity1
Entity2
Entity3
Controller
Rest (avec routing genre www.host.com/api/v1/)
ControllerRest1
ControllerRest2
Mobile (avec routing genre m.host.com)
ControllerMobile1
App (avec routing genre www.host.com/)
ControllerAdmin1
ControllerAdmin2
ControllerBase1
ControllerBase2

Quel est votre retour d'expérience sur ce sujet ?

Merci

3 réponses


Si tu n'a jamais développer sous SF2, je te dirais de commencer doucement, fait un projet ou tu fait simplement totu dans un bundle. Et à force de bien comprendre tu pourras commencera à complexifier.

Bonjour, si tu n'es pas tombé dessus "Symfony Best Practices"

La plupart du temps quand on découpe en plusieurs bundle, c'est dans l'optique de pouvoir s'en resservir pour plusieurs projets.
Exemple tu fais ton prope bundle de slider, il y a des chances que tu t'en resserve du coup idéalement tout mettre dans un bundle SlideBundle par exemple.
Et si c'est un projet sur mesure , j'ai tendance à préférer de mettre tout dans AppBundle avec mes controller bien rangé etc...
Tu verra aussi cque du coup tu vas plus vite si tu as à regénérer tes entités en ligne de commande. tu n'a qu'à changé le nom de l'entité au lieux de changer le nom du bundle et de l'entité.
C'est bien connu plus on est paresseux plus on va vite ! :p