IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Symfony PHP Discussion :

Bonne pratique librairie front-end externe [2.x]


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 24
    Par défaut Bonne pratique librairie front-end externe
    Bonjour,

    J'aimerai connaitre les bonnes pratique notament pour les bibliothèques front-end externe. Exemple, jQuery, Angularjs, Bootstrap etc... où les placer vous ?

    Quel est la bonne pratique ? mettre ça dans web/js web/css web/images ? ou dans le dossier de Ressources global au projet Resssources/js etc... ?

  2. #2
    Membre extrêmement actif
    Avatar de dukoid
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2012
    Messages
    2 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2 100
    Par défaut
    dans le même bundle. la bonne pratique est d'utilisé assetics. il faut mettre tes ressources dans /resources/public (voir chapitre sur doc officielle)


    après si tu as plusieurs bundles qui ont des ressources communes.
    tu créais un bundle à part par ex ResourcesBundle (et toujours en utilisant assetics)
    donc tes autres bundles utilisent les resources du bundle resourcesBundle...

  3. #3
    Membre expérimenté
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 168
    Par défaut
    Moi je dirais qu'il faut travailler avec assetic dans le dossier app/Ressources/public.
    Et jamais dans les bundles.

  4. #4
    Membre très actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2007
    Messages
    643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2007
    Messages : 643
    Par défaut
    oublie le fait de travailler "directement" avec le repertoire /web.
    Ca c'est assetic qui gère. Ne pas utiliser assetic mais symfony est un peu contradictoire pour moi.
    Faire du symfony c'est utiliser Assetic et Doctrine et ca évite ce genre de question.

  5. #5
    Membre Expert Avatar de Nico_F
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2011
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2011
    Messages : 728
    Par défaut
    Hello,

    Ce avec quoi je suis d'accord :
    - il faut utiliser assetic et ne pas toucher aux répertoires dans web
    - il faut mettre ses ressources communes dans app/Resources/public

    Ce avec quoi je ne suis pas d'accord :
    - le bundle à part ResourcesBundle
    - il ne faut jamais travailler dans les bundles

    Assetic permet effectivement (entre autres) de ne pas se soucier de l'arborescence finale dans le répertoire web. En plaçant vos ressources publiques là ou vous en avez besoin (qu'il s'agisse de app/Resources ou dans le répertoire public d'un bundle) assetic se charge d'importer tout ça et de vous faire une belle arbo soignée et logique dans le répertoire web.

    Je ne vois pas trop quel serait l'inconvénient de travailler dans les bundles, d'autant plus que par défaut symfony propose un dossier public pour les assets lors de la génération d'un bundle. Cela dit, pour une librairie externe ce n'est pas pertinent de la placer dans un bundle, sauf si elle est vraiment la seule à en avoir besoin.
    Je ne suis pas adepte du ResourcesBundle (même si j'arrive vaguement à en cerner le potentiel intérêt) car je suis adepte du "un bundle = une fonctionnalité" : dans ce cas il ne s'agit ni d'une fonctionnalité, ni d'un élément réutilisable.

    Dans le cas de Bootstrap, jQuery (et certainement d'autres) il y a encore une autre méthode qui consiste à les placer dans les vendors.
    On peut les trouver facilement sur Packagist, et donc les rajouter à notre projet via composer.

  6. #6
    Membre à l'essai
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Mai 2008
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur commercial

    Informations forums :
    Inscription : Mai 2008
    Messages : 6
    Par défaut
    personnellement, j'utilise bower pour gerer mes librairies externes front-end (jquery and co).

    dans les templates de mes bundles, je considere qu'elles sont situées dans /web/vendors.
    (pour les telecharger et les deployer un petit "bower install" dans le bundle concerné et c'est tout : si la lib existe dans la bonne version, il passe a une autre librairie, sinon il l'installe avec les dependences necessaires).

    pour mes librairies perso (peu de risque de doublons entre mes bundles) j'utilise assetic, comme dans la doc officielle.

    nota, j'automatise mes taches via grunt, qui me sert entre autre, a traiter mes images, minifier, concatener, mais aussi gerer mes scss, generer ma documentation,lancer des commandes "console", faire des commit, deployer mon site, lancer un projet .... ex: "grunt startprojet" => me demarre un nouveau projet avec les bundles que j'aime bien et ma config aux petits oignons, "grunt deploy" me me met mon site en ligne ... .

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Bonnes pratiques de protections individuelles
    Par Community Management dans le forum Sécurité
    Réponses: 23
    Dernier message: 11/06/2024, 11h23
  2. Réponses: 2
    Dernier message: 06/08/2014, 10h17
  3. Réponses: 5
    Dernier message: 12/09/2006, 18h06
  4. Front End graphique pour GDB sous windows
    Par KORTA dans le forum GDB
    Réponses: 8
    Dernier message: 20/08/2003, 09h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo