IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
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

Symfony PHP Discussion :

Votre avis sur Symfony2


Sujet :

Symfony PHP

  1. #101
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 96
    Points : 72
    Points
    72
    Par défaut
    Bonjour,

    Je débute avec le couple symfony2/doctrine2.
    Je n'ai pas d'expérience avec les ORM.

    Je me trompe peut être mais je pense qu'il faut "oublier" la base de données et pour la conception il ne faut plus penser Merise mais penser UML.
    La base de données étant là seulement pour sérialiser nos objets.

  2. #102
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    Bonjour,

    Je ne développe pas sur sf1.4 ni sf2 mais j'ai côtoyé des développeurs chevronnés sur ces frameworks et voici ce qu'il en est ressorti de nos discussions : la version 2 est partie royalement sur les traces de Java sans bénéficier de l'environnement Java. Le framework est complexe à souhait et la courbe d'apprentissage du coup est trop longue à leur yeux. Les performances en natif sont très très mauvaises. Il faut sérieusement s'équiper d'outils tiers pour atteindre des performances acceptables.
    Le gros point noir à leur yeux c'est Doctrine 2, à tel point qu'ils ont décidé de le virer. Il m'ont dit l'ORM c'est déjà pas top mais en PHP c'est le mal.
    Le point positif : Twig, ils ont été tous agréablement surpris.
    Donc comme toujours y'a du bon et du mauvais, mais globalement l'impression que j'ai eu était qu'ils avaient été déçus par le virage pris par Symfony.
    L'environnement technologique autour de PHP n'est pas du tout adapté à ce genre de framework tout-en-un.

  3. #103
    Expert éminent
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Points : 8 486
    Points
    8 486
    Par défaut
    @rawsrc

    Un peu rapide l'analyse peut-être.

    Il est sur que Symfony2 n'a rien à voir avec symfony 1. L'évolution est forte.

    Par contre le framework est bien réfléchi, il est costaud, rapide et adapté aux gros projets comme aux petits.

    L'apprentissage est trop long ? C'est simple à dire, mais difficile à démontrer dans un sens comme dans l'autre. Je ne pense pas que, pour un développeur qui connait bien PHP, l'apprentissage, puis la maîtrise, soit plus longue que pour un Zend. Est-ce trop long ? Chez nous l'apprentissage se fait "à la volée" et l'équipe fonctionne très bien sur Symfony2.

    Il faut s'équiper d'outil ? Quels outils ? Où ? Pour l'exécution du code ? Pour le développement ? C'est sur, il faut un micro, un EDI, une connexion internet pour commencer à développer, mais ceci me semble nécessaire pour tous développement web !

    Doctrine2 est une évolution encore plus forte, une révolution serait plus adapté. Mais Doctrine2 n'est pas le seul ORM utilisable avec Symfony2, d'autres existent et fonctionnent parfaitement. Le choix, ici, a été fait d'utiliser Doctrine2, au niveau des performances d'utilisation il n'y a pas photo. Même si l'appropriation et la bonne utilisation de l'outil est un peu plus longue. Seul bémol, l'utilisation de Doctrine2 avec des bases de données nosql, tel que Mongo qui n'est pas du tout optimisée.

    Pour Twig, je ne peux que confirmer, excellent outil.

    Il est sur qu'un développeur qui à beaucoup investi sur symfony 1 et se retrouve du jour au lendemain confronté à un Symfony2 et un Doctrine2, où il ne pourra absolument pas compter sur les "investissement" en formation déjà réalisé est un choc important. Mais cela en vaut réellement le coup pour quelqu'un qui débute.

    @david42
    Il est évident que l'analyse va partir plutôt du modèle objet que du modèle de la base de données. Mais il ne faut pas oublier que cela va ce terminer par une base de données sql, et que c'est cette base qui sera, in fine, interrogée. Il est donc important de bien prendre en compte la structure sql qui sera générée par le modèle objet, pour que celle-ci respectent les précepte de bon fonctionnement (et les formes normales). Un peu un double travail, mais le jeu en vaut la chandelle.
    Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).

    • Pensez à valoriser les réponses pertinantes, cliquez sur le bouton vert +1 pour indiquer votre accord avec la solution proposée.
    • Pensez à utiliser la balise [code] pour afficher du code, elle est cachée sous le bouton [#] dans l'éditeur.
    • Une discussion est terminée ? Alors le bouton est votre ami !

  4. #104
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    A savoir qu'il y'a deux choses dans Symfony2, les composants et le framework

    Personne n'est obligé d'utiliser la version du framework dite "standard" , avec tout les composent nécessaire pour faire un site rapidement, (dont Doctrine2), on peux aussi partir sur du Propel, et rien n’empêche d'utiliser le DBAL seul.

    Pour utiliser les composents comme ont le souhaite on peu créer sont propre Frameworks autour, je conseil à tous de lire les fameux articles "Create your own framework... on top of the Symfony2 Components" sur le site de Fabien :
    http://fabien.potencier.org

  5. #105
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 623
    Points : 1 370
    Points
    1 370
    Par défaut
    Citation Envoyé par Michel Rotta Voir le message
    Par contre le framework est bien réfléchi, il est costaud, rapide et adapté aux gros projets comme aux petits.
    Salut Michel,

    je me posais justement la question, à savoir si utiliser Symfony pour un petit projet est bien nécessaire.
    La question est toujours de savoir où est la limite entre petit est gros projet... (il est évident qu'on ne parle pas de site vitrine de 5 pages.)

    Qu'est ce qu'un petit projet pour toi?
    J'ai entendu dire qu'il est était assez difficile d'installer un projet sous Symfony sur un serveur mutualisé (ce qui suffit largement pour des petits projets).

    Merci.

  6. #106
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    Pour les petits projets utilise Silex

  7. #107
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 623
    Points : 1 370
    Points
    1 370
    Par défaut
    Citation Envoyé par stealth35 Voir le message
    Pour les petits projets utilise Silex
    Salut Stealth35,

    Qu'est ce qu'un petit projet pour toi?
    A quel moment sais-tu si tu dois utiliser Symfony ou Silex?

  8. #108
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    Citation Envoyé par Farid63 Voir le message
    Salut Stealth35,

    Qu'est ce qu'un petit projet pour toi?
    A quel moment sais-tu si tu dois utiliser Symfony ou Silex?
    un petit projet pour moi c'est quand y'a pas besoin d'ORM donc pas (ou peu de relation entre table), et 5 ~ 6 tables

  9. #109
    Membre habitué Avatar de FrontLine
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2008
    Messages
    173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2008
    Messages : 173
    Points : 134
    Points
    134
    Par défaut
    Moi qui suis habitué à avoir ce que j'ai besoin tout de suite grâce à SPL et quelques classes statiques bien saucissonné.

    Genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
     
    // Le core de mon framework maison
    require_once '/private/core.php';
    require_once '/private/config/site.php';
     
    $M = new coreMongo('sujet');
     
    // Petit parsage
    $message = coreSTR::BBcode($M->data->message);
     
    // On traite des éléments de l'UI ici
    coreUI::meta('title', $M->data->title);
     
    require_once CORE_PATH.'/header.php';
     
    // ...
    C'est léger, efficace, très intuitif mais on ré-invente la roue et ce n'est pas très bien organisé.

    Bref SF2 ça me change, j'ai l'impression d'être étriqué conceptuellement. A voir avec le temps ...

  10. #110
    Inactif  
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    215
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 215
    Points : 0
    Points
    0
    Par défaut
    c'est naze et ça mouline

  11. #111
    Membre habitué Avatar de FrontLine
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2008
    Messages
    173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2008
    Messages : 173
    Points : 134
    Points
    134
    Par défaut
    C'est vrai que SF2 mouline et contrairement aux blabla "marketing" SF2 est gourmand.

    C'est le prix à payer pour adopter cette façon de développer quasi prête à l'emploi et bénéficier des nombreux bundles déjà dispo ...

  12. #112
    Membre averti

    Inscrit en
    Juin 2008
    Messages
    307
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 307
    Points : 364
    Points
    364
    Par défaut
    Citation Envoyé par FrontLine Voir le message
    C'est vrai que SF2 mouline et contrairement aux blabla "marketing" SF2 est gourmand.

    C'est le prix à payer pour adopter cette façon de développer quasi prête à l'emploi et bénéficier des nombreux bundles déjà dispo ...
    Je nuancerai ta réponse : "mouline sous windows" pas sous linux. Ceci est du à l'utilisation de la fonction filemtime qui n'est pas optimisée sous windows. Après personnellement je le trouve plus rapide que symfony 1.

  13. #113
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 496
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 496
    Points : 12 596
    Points
    12 596
    Par défaut
    Je suis dessus depuis 15 jours.

    L'entrée dedans est assez lourdes.

    Mon taf c'est DBA/ZF mais vu le temps qu'il met a sortir autant essayé SF2.

    Je n'aime pas Doctrine2, même si je reconnais la facilité une fois que j'ai accepté de ne pas faire de requête SQL, le fait qu'il fasse Six requêtes alors qu'avec une seule j'aurais l'ensemble de mes données sans pour autant passer par le pattern proxie me frustre. mais je le répète cela apporte une certaine facilité et je dirais même une souplesse.

    Twig : ok je m'incline

    Le framework en lui même pas de souci, prise en main rapide et simple.
    Ce qui me manque le plus est un Zend_Validate complet, on l'attend pour la 2.1 mais je doute.

    Le plus dur : mettre en place d'un coup SF2-Doctrine2-Twig.

    Un espoir : Que le temps investit ne soit pas perdu.

  14. #114
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    383
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2009
    Messages : 383
    Points : 658
    Points
    658
    Par défaut
    @MaitrePylos
    Le composant Validator est tout de même bien complet!
    Un petit si la réponse convient. Merci.

  15. #115
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 496
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 496
    Points : 12 596
    Points
    12 596
    Par défaut
    @RapotOR : essaye de valider une date !

    Maintenant, je suis dessus depuis 15 jours et j'ai pas encore tout les automatisme.

  16. #116
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    383
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2009
    Messages : 383
    Points : 658
    Points
    658
    Par défaut
    @MaitrePylos

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
            $validator = $this->get('validator');
            $errorList = $validator->validateValue('2012-12-05', new \Symfony\Component\Validator\Constraints\Date());
            if (count($errorList) == 0) {
                echo 'valid';
            } else {
                print_r($errorList);
            }
    par contre, le pattern n'est pas paramétrable... donc, il faudrait utiliser DateTime.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
            $dateToBeTested = new \DateTime('2012-12-05');
            $minDate = new \DateTime('2012-12-01');
     
            $errorList = $validator->validateValue($dateToBeTested->getTimestamp(), new \Symfony\Component\Validator\Constraints\Min(array('limit' => $minDate->getTimestamp())));
            if (count($errorList) == 0) {
                echo 'valid';
            } else {
                print_r($errorList);
            }


    Tu peux toujours mettre le composant Zend\Validator en service. Il y a un repository sur Knp : https://github.com/KnpLabs/zend-validator
    Un petit si la réponse convient. Merci.

  17. #117
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 496
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 496
    Points : 12 596
    Points
    12 596
    Par défaut
    merci

    Pour le Zend\Validator, c'est beaucoup trop liés avec le framework Zend, je devrais aussi déployer

    Zend\Date
    Zend\Registry
    Zend\Local

    et j'en passe .

  18. #118
    Inactif  
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    215
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 215
    Points : 0
    Points
    0
    Par défaut
    Citation Envoyé par bilbot Voir le message
    Je nuancerai ta réponse : "mouline sous windows" pas sous linux. Ceci est du à l'utilisation de la fonction filemtime qui n'est pas optimisée sous windows. Après personnellement je le trouve plus rapide que symfony 1.
    mdr donc juste a cause d'une fonction symfony est lent sous windows? ça tient pas debout ou alors ils ont perdu la boule.

  19. #119
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    195
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2010
    Messages : 195
    Points : 511
    Points
    511
    Par défaut
    En même temps chercher à avoir quelque chose de performant en php sous windows faut pas être bien. Php n'est pas du tout optimisé sous windows. Rien qu'à voir le temps que prenne des test unitaire sous windows et les même sous linux ...

  20. #120
    Membre averti

    Inscrit en
    Juin 2008
    Messages
    307
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 307
    Points : 364
    Points
    364
    Par défaut
    Citation Envoyé par sybil Voir le message
    mdr donc juste a cause d'une fonction symfony est lent sous windows? ça tient pas debout ou alors ils ont perdu la boule.
    Si ca tient parfaitement debout dans le cas ou tu es en dev (usage massive de la dite fonction pour vérifier s'il faut regénérer le cache) ca rame, si tu fais un warmup et que tu désactive la regénération du cache c'est déjà bcp mieux.

    Personnellement j'ai testé sur 2 machine quasi équivalente une sous windows et l'autre sous nux, le rapport des perf atteint facilement un facteur 100 (3s pour générer la page sous windows et 30 ms sous windows)

Discussions similaires

  1. Donnez votre avis sur les articles de Developpez.com
    Par Geronimo dans le forum C++Builder
    Réponses: 13
    Dernier message: 14/01/2007, 22h00
  2. Donnez votre avis sur les articles de Developpez
    Par Anomaly dans le forum Contribuez
    Réponses: 37
    Dernier message: 29/05/2006, 21h48
  3. [Débat] Votre avis sur la section "Dev Web"
    Par Marc Lussac dans le forum Evolutions du club
    Réponses: 31
    Dernier message: 03/03/2004, 20h55
  4. Votre avis sur le schema Relax NG...
    Par Bj dans le forum Valider
    Réponses: 8
    Dernier message: 19/09/2003, 17h30
  5. Votre avis sur 1 livre SVP
    Par cab dans le forum DirectX
    Réponses: 4
    Dernier message: 17/09/2003, 10h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo