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

Bibliothèques et frameworks PHP Discussion :

Zend Framework vs symfony


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre averti
    Zend Framework vs symfony
    Bonjour,

    Je voudrais savoir selon vous, à l'heure actuelle, quel est le meilleur framework PHP entre Zend Framework et symphony, et pourquoi.
    J'ai lu quelques articles sur ces 2 frameworks mais ils datent principalement de 2006. Ils ont dû évoluer depuis.

    J'aimerais également avoir un avis sur leur pérennité, ce qui est un critère non négligeable.

    Merci d'avance

  2. #2
    Invité
    Invité(e)
    Je pense que c'est Zend Framework. d'autant plus que symphony est difficile à installer.

  3. #3
    Membre éclairé
    ça c'est de l'argument, la difficulté d'installation...

    je n'ai pas trop manipulé le ZF mais pour moi c'est plus un truc du genre de PEAR plutôt qu'un vrai framework, ce qui est le cas de symfony

    symfony est un outil très puissant, certes pas forcément très facile à aborder mais rien d'insurmontable si tu connais déjà le PHP et la POO
    vu sa complexité, je le réserve à des gros projets, pour les plus projets plus simples, j'utilise CakePHP (pour mon site par exemple)

    je te conseille la lecture du site officiel de symfony
    mais en tout cas, ZF et symfony n'ont rien à voir et pour moi symfony est réellement un framework et offre des fonctionnalités sans comparaison avec le ZF (et dispose d'une communauté plus large)

    edit : pour revenir sur l'install, il suffit d'installer php, puis pear, puis symfony avec une ligne de commande... c'est dur ?
    Cette signature n'a pas pu être affichée car elle comporte des erreurs.

  4. #4
    Membre du Club
    et maintenant ?
    quel est l'avis de quelqu'un qui a déjà utilisé les 2 ?

  5. #5
    Membre à l'essai
    Le mieux pour toi serait d'essayer je pense. Et puis regarde aussi d'autres frameworks. Ils pourraient mieux te convenir, ça dépend de ta manière de travailler, de tes besoins... Y a pas que Zend et Symfony dans la vie d'un développeur PHP ;-)

    ----
    http://jelix.org

  6. #6
    Membre régulier
    j'ai testé les 2
    Salut,

    y a 3 mois de ca environ, j'ai testé zend framework puis ma boite m'a payé une formation symfony.

    rien à dire, je préfère symfony. pas de difficulté niveau installation comme lu plus haut. par contre, il peut être utilise de faire le tuto askeet sur le site de symfony.

    pour zend lorsque j'ai testé, je n'avais que des librairies et toute les actions devait être implémenté ce qui n'est pas le cas avec symfony.

    en bref, avec symfony on code les règles de gestion tandis que ZF faut en plus implémenté les actions de base (type select insert delete update)

    cependant, on m'a affirmé que ZF implémentait le code des actions standard. à voir

  7. #7
    Membre à l'essai
    Bonjour à tous,
    Le débat entre le Zend et symfony...c'est un peu windows vs. linux Tout le monde en parle, beaucoup se battent pour en défendre un, mais tout le monde (ou persque) oublie que ce n'est pas la même utilisation.

    Zend Framework est ce que j'appelle un "framework briques", c'est à dire qu'il apporte au développeur un ensemble de composante, libre à lui d'utiliser ceux qu'il veut, et d'organiser son projet comme il l'entend.

    Symfony est ce que j'appelle un "framework englobant", c'est à dire qu'il conditionne l'ensemble de votre projet : il vous fournit une organisation de répertoire à respecter, un "chemin de développement" bien précis, etc...(si quelqu'un a une définition meilleure que "englobant" je suis preneur ^^). Symfony se démarque de Zend Framework avec ses outils de génération de code. En quelques lignes de commande, vous pouvez avoir un site qui effectue les opérations de base (CRUD - Création, affichage, modification, suppression) sur toutes les tables de votre base...ce qui est largement plus long sous Zend :p.

    Pour ma part, j'ai choisi symfony, y compris pour mes petits projets. A savoir qu'en une seule ligne de commande, on peut intégrer le Zend Framework à symfony !

  8. #8
    Membre chevronné
    Tout à fait d'accord pour dire que les 2 ont une utilisation différente... par contre quand tu dis :


    Pour ma part, j'ai choisi symfony, y compris pour mes petits projets. A savoir qu'en une seule ligne de commande, on peut intégrer le Zend Framework à symfony !
    On peut dire tout simplement que l'on peut intégrer le ZF dans N'IMPORTE QUEL autre framework. Pour ma part j'ai développé le mien et j'utilise le système d'ACL de ZF dans une des applis de ma boite. Il ne m'aura fallut également qu'une seule ligne pour utilize les Zend_ACL
    .o0o__St@iLeR__oOo.

    Lead Developer

    ASP.NET MVC - MCP/MCSD ASP.NET
    PHP Zend Framework / PhalconPHP
    Cordova/Xamarin IOS/Android
    Kendo UI - ExtJS - JQwidgets
    SQL Server / MySQL

  9. #9
    Membre régulier
    Clairement, pour quel type de projet faut-il mieux utiliser Zend et/ou Symphony?

    En tout cas, l'explication de cmaneu est assez intéressante et permet d'avoir une vision globale des deux...

    Il y a un article sur ce "combat" dans le dernier phpsolutions, si ça intéresse quelqu'un..

  10. #10
    Membre éclairé
    on va dire que le zend framework te laisse beaucoup plus libre, mais, du coup te laisse beaucoup plus coder.

    en outre, synfony a un temps d'apprentissage assez "long" au debut :
    il faut lire X page de doc pour configurer x fichier pour arriver a faire un crud assez sommaire, ca peut sembler dur et long a apprendre, mais, dans la durrée tu y gagne beacoup.

    a l'inverse, on peut démarrer avec presque rien, pour le zend framework, le code evolue tres vite, le rendu aussi, mais on passe son temps dans la doc. (pas encore pafaite), voir dnas les sources, afin de pouvoir pregrsser, assez lentement, au final.


    Mon retours sur experience sur le ZF :
    le zend framework te laisse beacoup plus libre, a long terme, et te permet d'etendre ses briques apr ta propres logique / tes besoins.
    En outre, il est contruit de facon suffisament intelligente pour repondre tres rapidement au final a des besoins tres complexes.

    Mon retours sur experience sur synfonie :
    tu est sur un rail, tu va vite, mais tu reflechira a 2 fois avant de surclasser une brique fondamentale (tres subjectif de ma part)


    au final :
    j'en sait rien , mias, je penche pour la libertée, donc, pour le zend framework

  11. #11
    Membre éclairé
    pour ma part je pense même que le terme de framework pour parler du ZF n'est pas adapté, pour moi CakePHP et symfony, sont de vrais frameworks tandis que ZF est un ensemble de briques, comme l'a dit cmaneu

    pour le choix entre l'un ou l'autre, je dirai que ça dépend de la taille de ton projet, inutile de t'embarquer dans un truc énorme (symfony offre moultes moultes possibilités) pour faire 3-4 pages
    car tu dois ajouter à la réalisation le temps de prise en main !

    d'après mes expériences, je choisis comme ceci : ZF (projet très simple), CakePHP puis symfony (le plus complexe)
    Cette signature n'a pas pu être affichée car elle comporte des erreurs.

  12. #12
    Membre à l'essai
    Personnellement j'ai débuté les frameworks php depuis environ 1 mois et je me suis lancé avec ZF.
    Je n'ai pas encore testé d'autres frameworks, je ne donc pas le comparer à ses concurrents, j'avoue avoir eut du mal au départ : je le trouvais assez complexe au départ (le bootstrap surtout)
    Niveau modèle, je trouve que le MVC est bien implémenté (bien que non obligatoire) : j'ai plus besoin de réfléchir à comment je vais organiser mes répertoires.
    ZF possède également un très bon support (bonne doc, beaucoup de tutos, d'exemples)

    Mais vu ce qui est dit, je pense que je vais voir un peu du coté de symphony (l'aspect framework "englobant")
    Quid de CakePHP ?

  13. #13
    Nouveau membre du Club
    j'ai utilisé cake PHP puis Zend Framework, pas encore essayer symphony...

    j'aime la souplesse amenée par le ZF, mais si il faut bien le reconnaitre trop de liberté n'est pas forcément une très bonne chose...

    comparé à cakePHP, j'ai trouvé le ZF nettement moins lourd et lent à l'exécution...

    en revanche, cakePHP est compatible avec PHP 4 comme PHP 5 ce qui, quand on ne maitrise pas la version de PHP avec laquelle on va travailler, est bien pratique...

    Niveau modèle, je trouve que le MVC est bien implémenté (bien que non obligatoire) : j'ai plus besoin de réfléchir à comment je vais organiser mes répertoires.
    ZF possède également un très bon support (bonne doc, beaucoup de tutos, d'exemples)
    tous les framework (pour symphony, je ne saurait l'affirmer, mais bon, j'en suis quasi certain...) impose plus ou moins une arborescence...

  14. #14
    Membre régulier
    Et quitte à se lancer dans les quid...

    Quid d'un couplage Smarty - PEAR, ou tout autre template + bibliothèque ?

    Peut être est-ce moins simple à prendre en main, mais l'avantage est que toute personne ayant déjà travaillé sur une bibliothèque ou sur un template pourra assez simplement se "mettre à jour"

  15. #15
    Membre habitué
    Bonjour
    Moi j'ai une question, pourquoi on entend à peine parler de symfony?
    Et pourquoi, il n'y a pas une rubrique Symfony sur Developpez?

  16. #16
    Membre confirmé
    Bonjour
    Moi j'ai une question, pourquoi on entend à peine parler de symfony?
    Et pourquoi, il n'y a pas une rubrique Symfony sur Developpez?
    On en entend frequemment parler dans la presse spécialisé. Developpant en php pour le plaisir, j'ai eu du mal à franchir le pas des frameworks.

    Finalement j'ai testé ZF, il y'a quelques semaines. L'interet des briques est interessant et permet une structure modulaire (davantage qu'avec du PHP simple.)

    Par contre pour les debutants, n'esperez pas faire un systeme modulaire du premier coup. J'ai effectué 5 refactoring avant d'atteindre enfin quelques choses de viables et utilisant les fonctionnalités du frameworks.

    Prochain etape : developper sous jetix ou symphony et surtout, les tests unitaires

  17. #17
    Membre actif
    Salut tous, je prend le train en route.

    Je n'ai pas de grosse d'expérience ZF ou Symphony par contre sur d'autres frameworks propriétaires.

    Je dirais que n'importe quel framework demandera toujours un apprentissage qui est plus ou moins long surtout selon la tournure d'esprit de l'apprenant, la "complexité" d'un fonctionnement est un truc relatif à chaque personne.

    Par contre, il y a bien 2 type de bases de code qui correspondent à mon avis à deux attitudes de developpeurs :

    Les "englobants", type symphony qui se veulent très structurants. On gagne du temps mais en adhérant à la conception des gens qui font symphony de ce qu'est une appli web.
    A mon avis ça botte les gens qui s'éclatent à utiliser des applis existantes et qui n'adorent pas se poser des questions de conception.

    Les "librairies de code", type ZF qui propose mais n'impose pas grand chose.
    Avec il reste plus de travail pour aboutir à une appli "finie" mais aussi à mon avis plus d'espace d'innovation et de création pour le developpeur.
    Ca botte les gens qui s'éclatent à ne pas réinventer la roue mais qui ont envie de faire les choses à leur manière.

    Ce serait pas une histoire de tempérament tout ça finalement ?

  18. #18
    Membre régulier
    Bonjour

    le problème avec ZF c qu'il ya plain de doc mais pas un truc détaillé qui te permet de bien comprendre la logique ZF . tu commence un tuto après il te balance vers d’autres tutos et voila tu es perdu


    pour symfony par exemple vous avez ça : http://www.symfony-project.org/askeet/1_0/

  19. #19
    Membre habitué
    J'ai commencé ZF en février de cette année. J'ai mis 2-3 semaines pour assimiler la doc et coder "proprement" en zf. Moi aussi, j'ai longtemps hésité entre Symphony et ZF, et finalement j'ai choisi ZF. Durant cette apprentissage, j'ai beaucoup appris en me servant des tutos, et surtout la présence des Maitres ZF sur les forums.

    Aujourd'hui, je me considère toujours comme 'apprenti' étant donné que je n'ai pas encore abordé beaucoup de technologie ZF, mais j'ai pu développé en 3 mois un CRM adapté au besoin client en gardant un code extrêmement souple, modulable et libre. Ce que j'ai vraiment apprécié dans ZF, c'est la gestion des Acls, la mise en place du MVC et les intéractions internes. Je cherchais un framework qui gère pour moi ce que j'appelle le 'bas niveau' (c'est à dire, gestion des sessions, acls, authentifications, post/get, url, modules...) afin que de m'occuper que des fonctionnalités du site. ZF répond à mes attentes.

    Je me pose ces questions sur symphony :

    - Quelles sont les fonctionnalités que vous ne trouvez pas dans ZF ?

    - Qu'est-ce que vous appeler 'créer une appli rapidement' ? Rapide pour moi, signifie un bon développement coté client (nous) pas forcément coté Framework.

    - Vous dites que Symphony impose sa vision d'application Web. Quelle est cette vision ? ZF est basé sur un modèle MVC (si on l'utilise en tant que framework et non pas composants) : c'est déjà une vision d'application (sans parler web). Ensuite, je trouve que ZF impose aussi sa vision Web, bien sûr je peux programmer en bourrin mais ça ne changera pas le fait que c'est un choix, et que ZF me permet de faire un code propre.

    Je n'ai pas vraiment d'avis pour/contre un de ses deux framework car je n'en connais qu'un (et pas à fond) par contre, je souhaiterai comprendre ce qui vous enchante dans Symphony par rapport à ZF en tant que développeur, afin d'avoir ma propre opinion. C'est sur que si vous parlez 'd'englobant', je vois plus ça comme une contrainte qu'un avantage.

    [MODIF]

    Enfin, je viens de regarder la vidéo AdminGenerator. C'est sûr que c'est vraiment impressionnant ce que fait Symphony, et j'envie cette fonctionnalité, qui me ferait gagner vraiment beaucoup de temps. J'ose espérer voir bientôt apparaitre un truc similaire sur ZF. Symphony intègre beaucoup de fonctionnalités de ce type ?

    [/MODIF]

    Merci

  20. #20
    Membre émérite
    Je ne participais pas encore à ce débat. Je connais bien ZF, et découvre Symphony. Dans un des derniers mensuels de PHPSolution, il y a un comparatif (sans jugement) de ces deux solutions.

    Je corrige des erreurs écrites ici par un manque de connaissance de ZF ou de developpez.

    1 - ZF permet très facilement le CRUD et cela sans se taper toutes les actions. Je ne comparerais pas la vitesse de réalisation, j'ignore le temps que cela prend sous Symphony à paramétrer. Mais sous ZF, j'en ai eu pour une demie-heure à tout mettre en place.
    2 - Il y une rubrique Symphony ET un forum Symphony sur Developpez même si ils sont moins vivants que ZF http://php.developpez.com/cours/?pag...eworks#symfony
    http://www.developpez.net/forums/for...play.php?f=663

    L'histoire de liberté entre ZF et Symphony me fait un peu penser au débat entre Java et PHP. Et je pense que si on opte pour une suppression de la liberté et donc une meilleure canalisation des développements, il vaut mieux se tourner vers Java-Hibernate-Struts-JSP que vers Symphony.

    Personnellement, mon choix n'est pas encore fait, Mais entre JAVA / Symphony / ZF, je pense néanmoins choisir ZF pour sa communauté bien plus vivante et réactive et parce que mon équipe est très disciplinée et que j'ai confiance en eux, ils savent respectés les briques, les couches et utilisent un typage fort sous PHP.
    Alexandre Tranchant
    Chef de projet AMO pour le Cerema.
    Retrouvez mes articles sur PHP et Symfony

###raw>template_hook.ano_emploi###