Bonjour,
C'est un peu trollesque et, en temps qu'adepte fervent de Symfony, je ne peux être complètement objectif.
Je m'étonne cependant des principales critiques qui reviennent sans arrêt au sujet de cet outil : lourdeur, complexité, ne convient qu'à de gros projets, courbe d'apprentissage longue...
Les début furent certes un peu plus compliqués mais depuis la v. 2.3,
et à condition d'utiliser l'organisation par défaut du framework, c'est à mon sens tout l'inverse :
- Les différents outils intégrés par défaut s'imbriquent à merveille (Composer, Twig, Doctrine, Annotations, Débogage, ...)
- De nombreux Bundles permettent de répondre simplement à la plupart des besoins (FOSUserBundle, FOSJsRoutingBundle, StofDoctrineExtensionsBundle, ...)
- De simples commandes permettent de pré-génerer une grande partie du code non spécifique à l'application.
- Rares sont les problématiques n'ayant pas une réponse simple, efficace, élégante et documentée.
- La doc est remarquable de richesse, de clarté et d'exhaustivité. La communauté est immense et active.
Honnêtement, la seule critique qui me vient à l'esprit concerne les form themes : si la gestion du cycle de vie des formulaire est excellente, leur habillage est "a pain in the ass".
L'expérience, ainsi que les centaines de topics concernant Sf2 que j'ai consulté, m'ont appris que souvent les difficultés surgissent quand on essaie d'adapter l'outil à ses habitudes.
Comme le terme
framework l'indique, il s'agit d'un
cadre de travail : implicitement, il faut accepter et utiliser les conventions imposées pour vraiment tirer parti de l'outil.
Et par conséquent, avoir l'humilité d'accepter que nos méthodes et habitudes ne sont peut être pas si bien pensées que ça, notamment comparées à celles de gens ayant produit un des framwork PHP les plus populaires au monde.
Grâce à celui-ci, je produis plus vite un code de meilleur qualité, construit suivant une organisation et des méthodes saines, autour de bonnes pratiques.
Depuis que j'ai arrêté de vouloir faire les choses à ma sauce pour simplement mettre en pratique les recommandations, mes compétences de développeur on fait de véritables bonds, tant dans la pratique qu'au niveau conceptuel. Suivant les traces de grands maîtres, je m'améliore constamment, et j'y trouve beaucoup de satisfaction.
Quant à cette lourdeur qui réserverait sf2 à de gros projets, je ne vois rien qui la justifie. Quand vous avez besoin de percer un simple trou dans une planche, vous ne refusez pas d'utiliser une perceuse sous prétexte qu'elle est aussi fournie avec des mèches métal et béton, ou qu'il faut la sortir de sa boîte.
L'installation et la configuration du framework pour un nouveau projet sont des opérations triviales donnant accès à tous les outils dont vous pourriez avoir besoin. Il gère parfaitement les ressources en ne les instanciant qu'au moment de leur utilisation.
Pour ma part c'est très simple : hors cas particuliers, si j'ai besoin d'une base de donnée j'utilise Symfony, sinon j'utilise Silex.
Si vous êtes un détracteur du framework, libre à vous, mais je me permet de vous poser la question suivante.
Avez-vous réellement essayé le framework, c'est à dire avant tout une organisation, des conventions et des méthodes, ou avez-vous juste essayé d'utiliser les classes et les librairies fournies pour reproduire votre organisation et vos habitudes?
Je suis désolé, mais dans ce dernier cas, votre avis est dénué d'intérêt, puisque hors contexte.
Si vous êtes intéressés par l'outil mais un peu perdu, commencez par lire la doc pour vous imprégner des concepts, et surtout relisez la régulièrement.
Essayez les comportements par défaut avant d'essayer de customizer quoique ce soit, vous verrez comme tout cela est bien pensé.
Voici deux point d'entrée particulièrement utiles :
http://symfony.com/doc/current/best_...ces/index.html
https://symfony.com/doc/current/quic...g_picture.htmlNote : ce message concerne l'utilisation du framework full-stack, pas l'utilisation en stand alone de ses composants.
1 |
0 |