Framework PHP : Symfony 4.0 automatise l'installation de paquets et la configuration
Et réduit de 70 % la taille des applications

Le , par Michael Guilloux, Chroniqueur Actualités
SensioLabs a annoncé il y a quelques jours la sortie du Symfony 4.0.0, un ensemble de composants PHP ainsi qu'un framework écrit en PHP qui fournit des fonctionnalités modulables et adaptables qui permettent de faciliter et d’accélérer le développement d'un site Web.

Le framework Symfony 4 est construit avec la dernière version de Symfony Components. Il s'agit d'un ensemble de bibliothèques PHP réutilisables qui devient une base standard pour la construction d'applications PHP. Il faut noter qu'il est possible d'utiliser n'importe lequel de ces composants dans vos propres applications indépendamment du framework Symfony.

Pour ses créateurs, Symfony 4 n'est pas seulement une nouvelle version majeure, mais une toute nouvelle expérience développeur. Parmi les nouveautés et améliorations, on note par exemple une installation automatisée de paquets avec Symfony Flex. Symfony Flex est la nouvelle façon de gérer les applications Symfony. Il est basé sur Symfony Recipes, un ensemble d'instructions automatisées pour intégrer des packages tiers dans des applications Symfony. Symfony 4 s'intègre parfaitement avec Symfony Flex pour automatiser les tâches les plus courantes effectuées sur les applications. Vous n'aurez par exemple pas à activer des bundles. Symfony Flex le fait pour vous, d'après SensioLabs.

Si vous regardez le fichier services.yaml dans un nouveau projet à partir de Symfony 3.3, vous remarquerez de gros changements : _defaults, autowiring, autoconfigure et plus encore. Ces fonctionnalités ont été conçues pour automatiser la configuration et accélérer le développement. Ainsi, Symfony 4 permet aux développeurs de se concentrer davantage sur l'écriture de code et ne pas perdre de temps sur la configuration.

Comme autre amélioration, on peut également retenir que les nouvelles applications créées avec Symfony 4 sont basées sur un micronoyau et contiennent 70 % moins de code et de fichiers que les nouvelles applications Symfony 3. Cela a été possible grâce à des optimisations, y compris la suppression de toutes les dépendances non essentielles. Comme résultat, cette version a la plus petite empreinte sur les frameworks PHP, CMS et autres projets qui utilisent Symfony. SensioLabs estime également que Symfony est maintenant idéal pour tout type de projet : microservices, API, applications Web monolithiques, applications consoles ou backend pour applications JavaScript.

« Symfony 4 représente une refonte complète de ses idées et fonctionnalités pour les adapter aux pratiques de l'industrie : les bundles d'applications ont disparu, les paramètres de configuration sont maintenant des variables d'environnement, la structure du répertoire d'application est plus facile à parcourir et des centaines d'autres petites améliorations vous feront aimer Symfony. Le résultat est qu'il y a moins de concepts Symfony et plus de pratiques standard », explique SensioLabs sur son site officiel. Des optimisations de chaque partie de Symfony ont également apporté des gains de performance.

Il y a bien d'autres fonctionnalités, y compris le nouveau MakerBundle pour la génération de code et Webpack Encore qui offre un moyen plus simple d'intégrer Webpack dans votre application.

En ce qui concerne la mise à niveau de vos applications existantes vers cette nouvelle version, les développeurs de Symfony promettent une expérience plutôt facile grâce à une bonne rétrocompatibilité. Mais il faudra d'abord faire une mise à niveau vers Symfony 3.4, qui offre une compatibilité totale avec n'importe quelle version de Symfony 3.x. Ensuite, vous devez corriger les problèmes de dépréciations signalées pour être prêt à effectuer une mise à niveau instantanée vers Symfony 4.

Symfony 4 est disponible depuis le 30 novembre, le jour même de la sortie de PHP 7.2. Notons qu'il requiert au moins la version 7.1.13 du langage de développement Web côté serveur afin de fonctionner.

Sources : Annonce de la sortie de Symfony 4, Symfony 4

Et vous ?

Utilisez-vous Symfony ?
Si oui, quelles versions et comment le trouvez-vous par rapport aux autres frameworks PHP ?
Sinon, quels frameworks PHP utilisez-vous ?

Voir aussi :

Rubrique Symfony : Forums, FAQ, Cours et tutoriels, etc.
PHP 7.2 est disponible en version stable avec la bibliothèque de cryptographie Sodium et d'autres améliorations et nouvelles fonctionnalités


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de mh-cbon mh-cbon - Inactif https://www.developpez.com
le 04/12/2017 à 13:31
très bonne nouvelle.
Avatar de Eric30 Eric30 - Membre régulier https://www.developpez.com
le 04/12/2017 à 14:05
SensioLabs estime également que Symfony est maintenant idéal pour tout type de projet : microservices, API, applications Web monolithiques, applications consoles ou backend pour applications JavaScript.
Du coup, que va devenir Silex? Fin du projet?

EDIT: j'ai trouvé ma réponse: https://gonzalo123.com/2017/07/10/silex-is-dead-or-not/
Avatar de Tartare2240 Tartare2240 - Membre actif https://www.developpez.com
le 04/12/2017 à 14:20
Citation Envoyé par Eric30 Voir le message
Du coup, que va devenir Silex? Fin du projet?
Symfony Flex a tout pour remplacer Silex sans douleur : il est léger, sans grosses dépendances, sans le "full-stack-tout-symfony-avec-42-dépendances-pour-rendre-l'appli-bien-fat-de-base", etc... Ayant utilisé une fois Silex et après en avoir chié pour installer correctement Doctrine avec la console qui s'interface correctement avec le reste... Vive Flex ! \o/
Avatar de coolspot coolspot - Membre confirmé https://www.developpez.com
le 04/12/2017 à 16:48
Une nouvelle version du deuxième mastodonte de framework PHP. Pour ma part symfony et Zend me font plus que peur rien que qaudn tu voit la doc d'installation du bouzin avec plein de ligne de commande.

A titre personnel j'utilise Code Igniteur pour tous mes nouveaux projet PHP et je l'aime bien parce qu'il a les bases d'un framework sans être non plus la grosse berta avec 256 modules x et y. Et pis ta toujours l'impression au moins de faire du PHP avec ce genre de framework.

La version 4 est en développement pour ce framework et j'ai hate de voir ce qu'elle va donner. Déjà que j'aime toujours ce framework depuis sa version 2.x ou j'ai commencé à m'y mettre.

Faut d'ailleurs que je finisse ma refonte de mon vieux site perso PHP tout pourri vers sa version frameworkisé tout joli
Avatar de Eric30 Eric30 - Membre régulier https://www.developpez.com
le 04/12/2017 à 16:57
Citation Envoyé par coolspot Voir le message
Une nouvelle version du deuxième mastodonte de framework PHP. Pour ma part symfony et Zend me font plus que peur rien que qaudn tu voit la doc d'installation du bouzin avec plein de ligne de commande.

A titre personnel j'utilise Code Igniteur pour tous mes nouveaux projet PHP et je l'aime bien parce qu'il a les bases d'un framework sans être non plus la grosse berta avec 256 modules x et y. Et pis ta toujours l'impression au moins de faire du PHP avec ce genre de framework.

La version 4 est en développement pour ce framework et j'ai hate de voir ce qu'elle va donner. Déjà que j'aime toujours ce framework depuis sa version 2.x ou j'ai commencé à m'y mettre.

Faut d'ailleurs que je finisse ma refonte de mon vieux site perso PHP tout pourri vers sa version frameworkisé tout joli
Je savais même pas que CodeIgniter existait encore... La dernière fois que je m'y suis intéressé, début 2013, leur forum avait été piraté par des sites qui vendaient des choses pas vraiment pour tout public...

Etre un "bouzin" ou pas n'est pas un critère de qualité. On prend un framework parce qu'il répond à un besoin, pas à des goûts subjectifs. Personnellement avant j'étais Zend Framework 1 puis 2 (au début), j'ai fais du Silex et d'autres petits trucs, et ben on peut dire ce que l'on veut mais Symfony reste le meilleur framework PHP pour les grosses applications (je parle pas de e-commerce) et a apporté énormément au langage.

De plus si tu avais lu l'article, ils expliquent que l'époque du "bouzin" est révolue ...

Pour moi ta comparaison est foireuse, et elle me fait penser aux gens qui font du e-commerce et qui te comparent Prestashop à Magento 2 en disant "j'aime pas Magento, c'est trop gros/compliqué". Chaque fois j'essaie de garder mon calme en leur expliquant que c'est pas la même cible/utilisation.
Avatar de dukoid dukoid - Membre chevronné https://www.developpez.com
le 04/12/2017 à 19:07
faut toujours qu'il y a des trolls qui viennent comparer l'incomparable.
Avatar de Mrsky Mrsky - Membre confirmé https://www.developpez.com
le 04/12/2017 à 20:31
Flex c'est du pain béni pour tous les devops !

La question c'est combien de dépendances je vais oublier lors de la première conversion
Avatar de coolspot coolspot - Membre confirmé https://www.developpez.com
le 05/12/2017 à 12:40
Citation Envoyé par Eric30 Voir le message
Je savais même pas que CodeIgniter existait encore... La dernière fois que je m'y suis intéressé, début 2013, leur forum avait été piraté par des sites qui vendaient des choses pas vraiment pour tout public...

Etre un "bouzin" ou pas n'est pas un critère de qualité. On prend un framework parce qu'il répond à un besoin, pas à des goûts subjectifs. Personnellement avant j'étais Zend Framework 1 puis 2 (au début), j'ai fais du Silex et d'autres petits trucs, et ben on peut dire ce que l'on veut mais Symfony reste le meilleur framework PHP pour les grosses applications (je parle pas de e-commerce) et a apporté énormément au langage.

De plus si tu avais lu l'article, ils expliquent que l'époque du "bouzin" est révolue ...

Pour moi ta comparaison est foireuse, et elle me fait penser aux gens qui font du e-commerce et qui te comparent Prestashop à Magento 2 en disant "j'aime pas Magento, c'est trop gros/compliqué". Chaque fois j'essaie de garder mon calme en leur expliquant que c'est pas la même cible/utilisation.
Je ne remet pas en question la qualité de symfony, j'exprime mon opinion sur le fait que malgré ce que dis l'article sympfony comme zend ca reste la grosse berta. J'éxprime juste une critique sur le fait que c'est sûrement adapté au gros truc mais qu'il y a plus simple et plus léger pour nos codes/projet de tous les jours si j'ose dire.

Après l'autre débat c'est est ce que PHP est le plus adapté pour les grosses applications face à du .Net ou du Java J2EE.
Avatar de papajoker papajoker - Membre émérite https://www.developpez.com
le 05/12/2017 à 14:22
Citation Envoyé par coolspot Voir le message
malgré ce que dis l'article symfony comme zend ca reste la grosse berta.
Tu parles donc de symfony 3 et non de la version 4 que tu as bien sûr testé ? Une grosse berta qui a quand même perdu 70% de poids

Citation Envoyé par coolspot Voir le message
'il y a plus simple et plus léger pour nos codes/projet de tous les jours si j'ose dire.
Sans doute pour toi, mais justement tu ne précises pas quel type de code tu fais tous les jours, énormément de devs l'utilisent tous les jours. Ta remarque hors contexte ne peut que s’apparenter à un troll.

Il y a de meilleurs sujets ici pour vendre ton framework de cœur sans dénigrer les autres.
Avatar de Vinorcola Vinorcola - Membre régulier https://www.developpez.com
le 05/12/2017 à 15:02
70% de code en moins, c'est pour l'édition de base qui n'embarque plus ni Twig, ni Doctrine, ni Swiftmailer, ni les Form, ni les validator, etc. Donc 70% de code en moins, c'est Symfony Standard Edition VS Flex. Mais pour les applications, il y aura toujours la même quantité de code (à peu près) : pour une application qui a des dépendances, elle seront installée quant même, donc ça ne change pas grand chose au volume de code final.

Ce qui est important ici, c'est que si c'est juste pour faire un serveur API, plus besoin de supprimer Twig puisqu'il n'y est plus par defaut.
Contacter le responsable de la rubrique Accueil