Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Le microframework Symfony 2.8 sera disponible avant la fin du mois
SensioLabs met en avant la simplicité de cette nouvelle version

Le , par Victor Vincent

23PARTAGES

6  0 
Un microframework est un terme utilisé pour désigner un framework minimaliste d’application web. Ce type de framework est jugé comme étant très rapide par certains développeurs. Symfony propose avec sa nouvelle version, un microframework avec une architecture interne plus flexible selon SensioLabs. Le framework verra son noyau même modifié, permettant notamment de simplifier la création d’applications Symfony. En effet, une application de type « Hello World » avec le microframework symfony ressemblera à ceci :


Dans ce nouveau microframework, un simple MicroKernel permet de créer et de configurer des bundles, de définir les routes, mais aussi de gérer le code du contrôleur. Dans l’exemple présent, il faut noter qu’à part les clauses import et les déclarations de fonctions, le code effectif de l’application fait seulement quatre lignes, souligne SensioLabs. Le framework n’améliore pas les performances brutes de Symfony, car il ne change que la façon d’enregistrer les routes. Cependant, les fonctionnalités qui ne sont pas utilisées sont tout simplement désactivées ainsi que certaines caractéristiques de l’édition standard de Symfony permettant ainsi de simplifier au maximum le microframework et gagner du coup en performance comme le montrent les mesures suivantes :


D’après SensioLabs, le microfraframework facilite la création d’applications en évitant aux développeurs d’être confrontés aux problèmes qui sont rencontrés dans d’autres microframeworks. Cela est rendu possible grâce au fait que le microframework se base entièrement sur la version standard de Symfony, permettant donc aux développeurs d’utiliser toutes les fonctionnalités dont ils ont besoin pour développer leurs applications. L’exemple suivant montre qu’en un seul fichier, il est possible de créer une application complète de type « Hello World » utilisant des templates, la barre d’outils de débogage web ainsi que le Profiler Symfony.


Le microframework permet également de créer des applications utilisant uniquement un seul fichier services.yml ainsi qu’un seul fichier config.yml, tandis que les routes sont définies sous forme d’annotations dans les classes contrôleurs.


Pour utiliser le MicroKernel dans le contrôleur frontal à la place du AppKernel habituel de la version standard et profiter pleinement de ses avantages, il suffit de l’inclure dans ledit contrôleur comme indiqué sur la figure qui suit.


Source : Blog Symfony

Et vous ?

Que pensez-vous de cette nouvelle version de Symfony ?

Voir aussi

le forum Symfony 2

la rubrique Symfony 2 (Cours, Tutoriels, FAQ, etc.)

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de MaitrePylos
Modérateur https://www.developpez.com
Le 26/11/2015 à 18:36
Citation Envoyé par SurferIX Voir le message


Tu veux qu'on aille plus loin ou tu veux te ridiculiser encore plus ?
il me semble que l'on s'emballe un peu. Le but du MiniFramework est, je pense, une nouvelle approche, plus orienté Librarie que FullStack. Tu peux toujours comparer Django à SF2, c'est juste que c'est n'est pas comparable. Ce n'est un secret pour personne je n'accroche pas à Symfony2, car je n'ai jamais eu le besoin de l'utiliser, maintenant les diverses applications qui l'utilisent plaide quand même pour dire que c'est un outil solide (Drupal,EZPublish,Laravel,Claroline Connect .....). On trouveras toujours à critiquer, par exemple j'aime travailler avec CakePHP3 et je maintiens quelques applis que j'ai écrites avec FuelPHP (comment vous ne connaissez pas pfffffffffffff). Tu lances un troll et rien d'autres, chacun ses outils (pour ses projets) point barre. Je suis d'accord avec toi sur pas mal de points, mais tout évolue, tu critiques Doctrine, je pense pareil, donc fait comme moi, ne l'utilise pas, c'est tellement plus simple d'avoir un bon schéma de db et de faire ses propres requêtes (idem pour Django). La discussion ici n'est pas de comparer des outils, mais d'annoncer une évolution chez Symfony, elle est bien, elle est mal, chacun son avis.... Le principal c'est que sa bouge. Enfin, reste plus à espérer que Python 2.x soit enfin abandonnés .....

ok
2  0 
Avatar de rawsrc
Modérateur https://www.developpez.com
Le 23/11/2015 à 14:50
Il était temps...
Vu comment leur framework se fait tailler des costumes en entreprise, ils se devaient de réagir en proposant du beaucoup plus léger.
En espérant que cela réconciliera certains avec SF2, mais j'ai comme un doute...

En tout cas, je vais prendre le temps de me pencher dessus.
1  0 
Avatar de HerveRenault
Membre à l'essai https://www.developpez.com
Le 27/11/2015 à 8:54
Citation Envoyé par SurferIX Voir le message
ps : j'ai développé http://benativo.fr en full symfony, je sais donc de quoi je parle en termes de rentabilité).
Joli site mais pourquoi avoir ne pas avoir combiné les 33 feuilles de style ? Assetic le fait dans Sf2.
1  0 
Avatar de dukoid
Membre chevronné https://www.developpez.com
Le 27/11/2015 à 9:43
Symfony

les qualités :
Twig : une merveille. je ne peux plus m'en passer.
les routes : super pratique et simple.
les services : rendent accessibles aux newbies un concept intéressant de la POO, l'injection de dépendances. (corrigé)
la validation de formulaire : assez simple à mettre en oeuvre et assez puissant pour faire de la validation de formulaire dynamique.
separation of concerns (corrigé) au lieu de MVC: un bon compromis. à chacun sa place (la logique d'un coté, le modèle dans un autre et la vue dans un autre). plus de mélange illisible.
la pérennité : Symfony existe depuis longtemps et n'est pas prêt de s'arrêter. symfony2.7 sera compatible avec la nouvelle version de Symfony la 3 donc (prévu en 2016).
la documentation : une bonne documentation officielle (en Français jusqu'à la 2.6 et qu'en anglais depuis la 2.7)
la fiabilité : Symfony est fiable et suivie de correctif régulier et rapide.

les défauts :
doctrine : le query language un peu complexe
la création de formulaire complexe : un peu hardu à coder (formulaires imbriqués....)
l'apprentissage : un peu plus long que les autres frameworks
1  0 
Avatar de MaitrePylos
Modérateur https://www.developpez.com
Le 27/11/2015 à 14:14
Citation Envoyé par vinmar Voir le message
i Silex, par le même créateur (Fabien Potencier)
Rendons à César ce qui est à César

Silex est de Igor Wiedler et Fabien Potencier
1  0 
Avatar de Soobook
Membre habitué https://www.developpez.com
Le 08/02/2016 à 13:15
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.html

Note : ce message concerne l'utilisation du framework full-stack, pas l'utilisation en stand alone de ses composants.
1  0 
Avatar de autran
Rédacteur https://www.developpez.com
Le 23/11/2015 à 14:43
j'ai comme l'impression que symfony s'attaque au segment de marché tenu par node.js
0  0 
Avatar de phpiste
Membre averti https://www.developpez.com
Le 24/11/2015 à 9:01
en quoi il sera different de Silex ?
0  0 
Avatar de MaitrePylos
Modérateur https://www.developpez.com
Le 24/11/2015 à 9:41
Citation Envoyé par phpiste Voir le message
en quoi il sera different de Silex ?

Réponse de F.Potencier lui même Source

Citation Envoyé par F.Potencier

Silex and Symfony MicroKernel are not related at all.

Silex is an implementation of a framework on top of the Symfony components (done in a very different way than Symfony, the full-stack framework; Pimple, ...).

Symfony MicroKernel is a "just" different way to **configure** the Symfony full-stack framework, but shares everything else (caching, bundles, ...).
0  0 
Avatar de adrii
Candidat au Club https://www.developpez.com
Le 24/11/2015 à 9:41
Citation Envoyé par phpiste Voir le message
en quoi il sera different de Silex ?
Quelqu'un a posé la question sous la news du site de SF et Fabien Potencier a répondu :


Silex and Symfony MicroKernel are not related at all.

Silex is an implementation of a framework on top of the Symfony components (done in a very different way than Symfony, the full-stack framework; Pimple, ...).

Symfony MicroKernel is a "just" different way to **configure** the Symfony full-stack framework, but shares everything else (caching, bundles, ...).
0  0