Le 08/08/2016

Pourquoi j'utilise Symfony ?

On me demande souvent pourquoi utiliser Symfony, certains développeurs (même si ca devient assez rare) développent en PHP5 et ne comprennent pas forcément l’utilité d’un framework PHP. Le temps de formation à ce type d’outils est assez long il faut le reconnaitre mais une fois maitrisé…faites moi confiance : ca change la vie.
Pour ma part c’est mon ancien chef de projet technique George Morosan (http://www.george-morosan.com/) qui m’en avait parlé lorsque j’étais en stage de 3eme année dans une web agency parisienne en tant développeur.
A ce moment la Symfony c’était encore le début, je commençais tout juste à en entendre parler et beaucoup de développeurs développaient encore à partir de zéro (ou souvent utilisaient un site « type », une sorte de squelette de site qu’ils modifiaient par la suite pour gagner du temps et ne pas repartir exactement de zéro).
Depuis les choses ont changé et si vous voulez diminuer vos couts afin d’avoir des prix corrects par rapport à la concurrence il vous faut trouver des moyens d’être plus productif.
Pour le travail en groupe, beaucoup d’entre vous utilisent maintenant un SVN, chose qui n’était pas toujours très utilisé il y a encore quelques années. Au début vous trouviez surement cela un petit peu compliqué et vous n’en voyiez pas l’utilité et pourtant maintenant vous ne pouvez plus vous en passer tellement c’est pratique et ca vous facilite la vie. Je me trompe ? Symfony c’est le même principe.

Symfony c'est quoi ?


C’est un ensemble d’outils PHP, un environnement de travail qui vous permet de développer plus rapidement et plus proprement. En plus de vous fournir une librairie très riche, il vous fournit la possibilité de générer un squelette de site internet, vos classes et votre base de données à partir d’une seule ligne de commande ;)
Symfony vous permet de développer en MVC en séparant bien les 3 couches. Il vous fournit aussi la possibilité de faire des tests unitaires, des tests fonctionnels, gérer le multilingue facilement, utiliser des fichiers de configurations facilement, faire de l’url rewriting SUPER FACILEMENT…et bien d’autres fonctionnalités.
Vous gagnez du temps (et donc de l’argent) sur la mise en place de votre projet web, et aussi sur sa maintenance car votre code est plus facilement modifiable et mieux structuré ce qui permet de pouvoir faire évoluer votre site plus facilement.

Des exemples de site sous Symfony ?


Le premier qui me viens a l’esprit c’est Dailymotion un des gros concurrents de Youtube… à l'époque vu le nombre d’utilisateurs sur ce site, vous vous doutez bien qu’il a du être optimisé au maximum pour utiliser le moins de ressources possible. L’avantage c’est qu’avec Symfony vous pouvez gérer la mise en cache des informations et si vous programmez correctement votre application peu être très efficace.

Pourquoi vous avez peur de vous lancer ?


Souvent vous avez la flemme de vous y mettre parce que ca va vous prendre du temps pour vous former et moi aussi j’ai mis longtemps à m’y mettre pour la même raison. Il faut réfléchir et apprendre de nouvelles choses. Même si c’est intéressant, ca demande un effort…
Bien sur il y a des pré-requis pour apprendre à utiliser symfony, pour moi il faut d’abord :
- Connaitre le principe du MVC
- Savoir utiliser le PHP objet (PHP5)
- Réfléchir un minimum et être un peu curieux.
Ayant développé quelque peu sous Magento, je vous assure que Symfony c’est du bonheur !

La documentation et les ressources à volonté !

L’avantage de la communauté Symfony c’est aussi sa documentation, sur le site officiel vous aller en trouver des tas et des tas gratuitement… Je vous conseille vivement de commencer par le tutoriel du site officiel. Une fois ce tutoriel réalisé, vous maitriserez les bases de Symfony et vous serez prêt à attaquer un vrai projet avec ce framework. De plus, il existe des plugins, par exemple sfGuard (1.4) ou FOSUserBundle(Sf 2 et 3) pour gérer la sécurité de votre applications…et il y a énormément de plugins qui vous permettront de ne pas réinventer la roue à chaque fois.

Quand utiliser Symfony ?

Symfony c'est seulement quand le client a un besoin particulier, c'est pour du développement spécifique. Il est évident que si vous voulez réaliser un blog ou un site e-commerce, il y a surement d’autres solutions mieux adaptées à votre projet, je pense notamment à Wordpress pour les blogs et Magento ou Prestashop pour les sites « e-commerce ». Pour tout le reste il y a eurocard mastercard Symfony. Si vous avez d'autres précisions a apporter sur le sujet, n'hésitez pas à laisser un commentaire.
Commentaires sur cet article
Pas encore de commentaires pour cet article. Soyez le premier !

Vous devez être connecté pour commenter un article.