Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > Symfony2
Symfony2 Forum d'entraide sur le framework PHP Symfony2.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Actualité déjà publiée
 
Outils de la discussion
Publicité
'
Vieux 21/01/2012, 11h23   #101
Nouveau Membre du Club
 
Inscription : octobre 2002
Messages : 86
Détails du profil
Informations forums :
Inscription : octobre 2002
Messages : 86
Points : 36
Points : 36
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.
david42 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/01/2012, 12h53   #102
Expert Confirmé
 
Avatar de rawsrc
 
Homme Martin
Dev indep
Inscription : mars 2004
Messages : 1 461
Détails du profil
Informations personnelles :
Nom : Homme Martin
Âge : 35
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Dev indep

Informations forums :
Inscription : mars 2004
Messages : 1 461
Points : 2 548
Points : 2 548
Envoyer un message via Skype™ à rawsrc
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.
__________________
# Dans la Création, tout est permis mais tout n'est pas utile...
rawsrc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/01/2012, 15h42   #103
Modérateur
 
Avatar de Michel Rotta
 
Homme Michel Rotta
Responsable d'exploitation informatique
Inscription : septembre 2005
Messages : 4 913
Détails du profil
Informations personnelles :
Nom : Homme Michel Rotta
Âge : 49
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Responsable d'exploitation informatique
Secteur : Distribution

Informations forums :
Inscription : septembre 2005
Messages : 4 913
Points : 7 505
Points : 7 505
@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 !
Michel Rotta est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 24/01/2012, 09h50   #104
Modérateur
 
Inscription : septembre 2010
Messages : 7 101
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 101
Points : 8 466
Points : 8 466
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
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/01/2012, 00h07   #105
Membre chevronné
 
Avatar de Farid63
 
Homme Farid
Inscription : janvier 2008
Messages : 368
Détails du profil
Informations personnelles :
Nom : Homme Farid
Âge : 26
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : janvier 2008
Messages : 368
Points : 684
Points : 684
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.
Farid63 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/01/2012, 09h39   #106
Modérateur
 
Inscription : septembre 2010
Messages : 7 101
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 101
Points : 8 466
Points : 8 466
Pour les petits projets utilise Silex
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/01/2012, 16h20   #107
Membre chevronné
 
Avatar de Farid63
 
Homme Farid
Inscription : janvier 2008
Messages : 368
Détails du profil
Informations personnelles :
Nom : Homme Farid
Âge : 26
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : janvier 2008
Messages : 368
Points : 684
Points : 684
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?
Farid63 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/01/2012, 16h35   #108
Modérateur
 
Inscription : septembre 2010
Messages : 7 101
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 101
Points : 8 466
Points : 8 466
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
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2012, 23h51   #109
Membre régulier
 
Avatar de FrontLine
 
Nicolas
Webmaster
Inscription : janvier 2008
Messages : 172
Détails du profil
Informations personnelles :
Nom : Nicolas
Âge : 30

Informations professionnelles :
Activité : Webmaster

Informations forums :
Inscription : janvier 2008
Messages : 172
Points : 84
Points : 84
Moi qui suis habitué à avoir ce que j'ai besoin tout de suite grâce à SPL et quelques classes statiques bien saucissonné.

Genre :

Code :
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 ...
FrontLine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/02/2012, 15h17   #110
Invité régulier
 
Inscription : juillet 2006
Messages : 165
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 165
Points : 7
Points : 7
c'est naze et ça mouline
sybil est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 11/02/2012, 12h23   #111
Membre régulier
 
Avatar de FrontLine
 
Nicolas
Webmaster
Inscription : janvier 2008
Messages : 172
Détails du profil
Informations personnelles :
Nom : Nicolas
Âge : 30

Informations professionnelles :
Activité : Webmaster

Informations forums :
Inscription : janvier 2008
Messages : 172
Points : 84
Points : 84
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 ...
FrontLine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/02/2012, 11h00   #112
Membre régulier
 
Inscription : juin 2008
Messages : 114
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 114
Points : 84
Points : 84
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.
bilbot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/02/2012, 22h33   #113
Rédacteur/Modérateur
 
Avatar de MaitrePylos
 
Homme Gérard Ernaelsten
DBA & Dev PHP
Inscription : juin 2005
Messages : 3 174
Détails du profil
Informations personnelles :
Nom : Homme Gérard Ernaelsten
Âge : 39
Localisation : Belgique

Informations professionnelles :
Activité : DBA & Dev PHP
Secteur : Service public

Informations forums :
Inscription : juin 2005
Messages : 3 174
Points : 6 460
Points : 6 460
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.
MaitrePylos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2012, 09h56   #114
Membre éprouvé
 
Cédric L.
Inscription : février 2009
Messages : 315
Détails du profil
Informations personnelles :
Nom : Cédric L.
Localisation : Belgique

Informations forums :
Inscription : février 2009
Messages : 315
Points : 436
Points : 436
@MaitrePylos
Le composant Validator est tout de même bien complet!
__________________
Un petit si la réponse convient. Merci.
RapotOR est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2012, 10h06   #115
Rédacteur/Modérateur
 
Avatar de MaitrePylos
 
Homme Gérard Ernaelsten
DBA & Dev PHP
Inscription : juin 2005
Messages : 3 174
Détails du profil
Informations personnelles :
Nom : Homme Gérard Ernaelsten
Âge : 39
Localisation : Belgique

Informations professionnelles :
Activité : DBA & Dev PHP
Secteur : Service public

Informations forums :
Inscription : juin 2005
Messages : 3 174
Points : 6 460
Points : 6 460
@RapotOR : essaye de valider une date !

Maintenant, je suis dessus depuis 15 jours et j'ai pas encore tout les automatisme.
MaitrePylos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2012, 10h36   #116
Membre éprouvé
 
Cédric L.
Inscription : février 2009
Messages : 315
Détails du profil
Informations personnelles :
Nom : Cédric L.
Localisation : Belgique

Informations forums :
Inscription : février 2009
Messages : 315
Points : 436
Points : 436
@MaitrePylos

Code :
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 :
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.
RapotOR est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2012, 10h48   #117
Rédacteur/Modérateur
 
Avatar de MaitrePylos
 
Homme Gérard Ernaelsten
DBA & Dev PHP
Inscription : juin 2005
Messages : 3 174
Détails du profil
Informations personnelles :
Nom : Homme Gérard Ernaelsten
Âge : 39
Localisation : Belgique

Informations professionnelles :
Activité : DBA & Dev PHP
Secteur : Service public

Informations forums :
Inscription : juin 2005
Messages : 3 174
Points : 6 460
Points : 6 460
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 .
MaitrePylos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2012, 11h03   #118
Invité régulier
 
Inscription : juillet 2006
Messages : 165
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 165
Points : 7
Points : 7
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.
sybil est déconnecté   Envoyer un message privé Réponse avec citation 02
Vieux 14/02/2012, 11h43   #119
Membre éprouvé
 
Benjamin Thuillier
Inscription : juillet 2010
Messages : 195
Détails du profil
Informations personnelles :
Nom : Benjamin Thuillier
Âge : 23
Localisation : France, Hérault (Languedoc Roussillon)

Informations forums :
Inscription : juillet 2010
Messages : 195
Points : 472
Points : 472
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 ...
gilwath est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 14/02/2012, 16h24   #120
Membre régulier
 
Inscription : juin 2008
Messages : 114
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 114
Points : 84
Points : 84
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)
bilbot est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Actualité déjà publiée
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h01.


 
 
 
 
Partenaires

Hébergement Web