Aller au menu - Aller au contenu

Symfony2, une nouvelle chorégraphie

Revenir à la liste des news
Participer à la discussion

Image

Informations

Contributeur(s) : game, J-C Bubbendorf, luckyboss1, NougatRillettes, PC17pouces, superman2002, Torgi et valloch
Publié : le 28/07/2011 à 12:19:22
Catégorie : Web
Visualisations : 16 036

Licence : Creative Commons BY SA

News zCorrigée

Symfony2, une nouvelle chorégraphie

La nouvelle version du célèbre framework Symfony est maintenant disponible en version finale. Elle avait été annoncée il y a maintenant plus d’un an lors du Symfony Live 2010. Et ce fut au mois de mars dernier, lors du Symfony Live 2011 à San Francisco (puis plus tard à Paris) que fut annoncée l’arrivée prochaine de Symfony2. Finalement, avec plusieurs mois de retard, la version finale est maintenant disponible. Ce retard fût en partie dû à l'important succès de Symfony2 auprès de la communauté qui s'est énormément investie en retournant tous les bug rencontrés, en allant jusqu'à proposer de nombreuses idées d'améliorations. De plus, les producteurs de Symfony2 souhaitaient fournir au public une version tout à fait stable et éviter l'arrivée de version telle que 2.0.1 apportant des correctifs de bug (comme c'est le cas avec de nombreux logiciels). Finalement, après 12 Preview Release, 5 BETA et 6 Release Candidate, la version finale qui nous sort s'annonce d'une grande stabilité et donc déjà prête pour la mise en production.


Présentation du framework


Image utilisateur
Logo de Symfony2

Symfony2 est un framework open-source réalisé intégralement en PHP, soutenu et développé par SensioLabs, une société française. Il fournit une architecture et des outils facilitant et accélérant le développement d'applications orientées web, tout en intégrant automatiquement la gestion de la sécurité. Comme la plupart des framework web, il est basé sur l’architecture MVC.

Cette version marque un vrai tournant dans l’histoire de Symfony. On peut d’ailleurs noter que Symfony2 prend une majuscule alors que les précédentes versions n’en avaient pas : on parlait alors de symfony 1.x.x.
Un nouveau site a aussi été construit : Symfony.com. Il rassemble pour le moment une documentation très complète et assez facile à comprendre, même si vous n’avez jamais utilisé de framework auparavant. Cette facilité de prise en main constitue l'un des points forts du projet.


Symfony2, un nouveau départ


Image utilisateur

Pour Symfony2, Fabien Potencier (créateur et développeur principal de Symfony) a annoncé être reparti de zéro. Autant symfony 1.x se rapprochait du modèle lancé par Ruby-on-Rails ; autant Symfony2 a été totalement repensé pour être le plus extensible possible, et par conséquent, pour faciliter la vie des développeurs. Le framework a choisi de se rapprocher au maximum des standards du web (des conventions), notamment en se rapprochant du fonctionnement HTTP, permettant ainsi de très grosses performances.

L’architecture des dossiers a été revue (et simplifiée) par rapport à la branche 1.x. L’utilisateur n’a maintenant plus que 4 dossiers (au lieu des 7 dossiers nécessaires à symfony 1.x) :
  • app : ce dossier contient tous les fichiers nécessaires à la configuration de l’application ;
  • src : ce dossier contient toutes les sources du projet (les contrôleurs, les vues, les entités du modèle - voir plus bas, les formulaires, etc.) ;
  • vendor : ce dossier contient toutes les bibliothèques (Symfony compris) utilisées par l'application ;
  • web : ce dossier est le seul accessible par les utilisateurs finaux (les clients web).

Le cœur de Symfony2 a été réalisé en utilisant les nouveautés de PHP 5.3.2, permettant ainsi l’utilisation des puissants namespaces. Ce dernier ne compte qu’un peu plus d’une centaine de lignes de code, ce qui nous montre la simplicité de cette version.

Symfony2 est aussi prévu pour être distribuée en plusieurs versions.
En effet, avec symfony 1.x, il n’y avait qu’une version téléchargeable qu’il fallait ensuite configurer en fonction de son projet. Il existait aussi une « sandbox » qui était prévue pour faire découvrir Symfony et le tester. Or, les développeurs de Symfony se sont aperçus que beaucoup de personnes commençaient un projet avec la sandbox, car elle était déjà configurée et prête à l’emploi. Symfony2 sera donc disponible en plusieurs versions :
  • la version sandbox, uniquement pour la découverte du framework ;
  • la version classique, qui fournit le framework brut, sans aucune configuration ;
  • la version « Standard Edition », qui fournit le framework prêt à l’emploi, configurée pour la plupart des cas d’utilisation ;
  • la version CMF, qui fournira un CMF s’appuyant sur Symfony2 ;
  • et peut-être bien d’autres versions...

Vous pouvez dès à présent télécharger la version « Standard Edition ».


Les « Bundles » font leur arrivée


Image utilisateur

Symfony2 est entièrement basé sur le pattern de l'injecteur de dépendances et introduit la notion de Bundles. Les Bundles sont en fait des bouts de code pouvant fonctionner indépendamment, mais pouvant aussi interagir avec d’autres Bundles (grâce à l’injection de dépendances). Chaque Bundle va pouvoir executer ou gérer une fonction bien précise de l'application. Cela permet de mieux structurer un site web.
Par exemple, imaginons pour le Site du Zéro :

  • un Bundle général, qui accueille les visiteurs ;
  • un Bundle pour la gestion des news ;
  • un Bundle pour la gestion des forums ;
  • un Bundle pour la gestion des tutoriels ;
  • etc.

Un autre intérêt de ces Bundles est de permettre à la communauté de les partager. Par exemple, il existe déjà un Bundle Forum, un Bundle pour administrer le site, un autre pour la gestion d’un espace membre, etc. Chacun de ces Bundles peut facilement être intégré à un projet Symfony2. La communauté étant particulièrement active, il existe déjà un site web regroupant tout ce travail : symfony2bundles.org.

Si le core de Symfony2 est si petit, c’est parce que Symfony2 est lui-même bâti autour de Bundle. La gestion des formulaires en est remise à un Bundle par exemple ; celle de la base de données aussi (via un ORM par exemple) ; et même la gestion des contrôleurs est effectuée par un Bundle.

Image utilisateur En savoir plus sur les Bundles


Doctrine 2, l'ORM par défaut


Doctrine 2 est un ORM très puissant qui permet de fournir au développeur une couche d’abstraction de la base de données. Plutôt que de penser en tables et en enregistrements (ou lignes), on pense « orienté objet » : une table devient une classe, un enregistrement devient une instanciation de cette classe. Doctrine 2 appelle ces classes des entités. Plus besoin donc de passer par PhpMyAdmin pour créer ces tables sous MySQL par exemple. Il suffit de créer une classe avec des attributs, et Doctrine 2 se charge du reste.

Image utilisateur
Image extraite de la documentation officielle de Symfony2


Voici un exemple d'entité inspiré par la documentation officielle de Symfony2 :

Secret (cliquez pour afficher)
Code : PHP - src/Acme/StoreBundle/Entity/Product.php
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
<?php
namespace Acme\StoreBundle\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * @ORM\Entity
 * @ORM\Table(name="product")
 */
class Product
{
    /**
     * @ORM\Id
     * @ORM\Column(type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    protected $id;

    /**
     * @ORM\Column(type="string", length="100")
     */
    protected $name;

    /**
     * @ORM\Column(type="decimal", scale="2")
     */
    protected $price;

    /**
     * @ORM\Column(type="text")
     */
    protected $description;





    public function __construct($name = NULL, $price = NULL, $description = NULL)
    {
        if ($name !== NULL)
            $this->setName($name);

        if ($price !== NULL)
            $this->setPrice($price);

        if ($description !== NULL)
            $this->setDescription($description);
    }



    public function getId()
    {
        return $this->id;
    }



    public function getName()
    {
        return $this->name;
    }

    public function setName($name)
    {
        $this->name = $name;
    }



    public function getPrice()
    {
        return $this->price;
    }

    public function setPrice($price)
    {
        // On se sert des getter pour appliquer des vérifications plus pointues
        $this->name = floatval($price);
    }



    public function getDescription()
    {
        return $this->description;
    }

    public function setDescription($description)
    {
        $this->description = $description;
    }
}

Et voici comment utiliser cette entité à partir d'un contrôleur :

Secret (cliquez pour afficher)
Code : PHP
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
<?php
use Acme\StoreBundle\Entity;

$product_1 = new Product();
$product_1->setName("Bike");
$product_1->setPrice(800);
$product_1->setDescription("fixed gear, blue, fast");

$product_2 = new Product("Helmet", 20.99, "black, fits most");

$product_3 = new Product("Jersey", 50.15);
$product_3->setPrice(35);
$product_3->setDescription("women's small, green and white");

$em = $this->getDoctrine()->getEntityManager();
$em->persist($product_1);
$em->persist($product_2);
$em->persist($product_3);
$em->flush();

À la fin de ce code, nous retrouvons la base de donnée dessinée sur l'image ci-dessus.

Le Bundle Doctrine 2 est fourni par défaut dans Symfony2.

Image utilisateur En savoir plus sur Doctrine 2


Twig, un moteur de template puissant


Image utilisateur
Logo de Twig

On note aussi l'intégration de Twig, un moteur de template très prometteur. On remarque que les développeurs se sont inspirés de très bons framework tels que Spring (JAVA) ou Django (Python). Pour ceux qui ont déjà fait du développement en Python avec Django, on remarque que la syntaxe de Twig est assez semblable à Django. Son utilisation est facultative. Un tutoriel à ce sujet est disponible depuis peu sur le site.

Image utilisateur En savoir plus sur Twig dans Symfony2


Le framework de formulaire


Symfony2 intègre par défaut un composant qui s'occupe de gérer les formulaires. Ce « micro-framework » permet la création de formulaires très facilement sans avoir à écrire une seule ligne de html. Il suffit pour cela de créer une classe Formulaire. Voici un exemple inspiré de la documentation officielle :

Code : PHP - src/Acme/StoreBundle/Form/ProductType.php
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
<?php
namespace Acme\StoreBundle\Form;

use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilder;

class ProductType extends AbstractType
{
    public function buildForm(FormBuilder $builder, array $options)
    {
        $builder->add('name');
        $builder->add('price', 'money', array('currency' => 'USD'));
    }
}

Twig permet un rendu très facile du formulaire dans vos templates :

Code : PHP - Template Twig
1
2
3
4
5
<form action="{{ path('store_product') }}" method="post" {{ form_enctype(form) }}>
    {{ form_widget(form) }}

    <input type="submit" />
</form>

Mais si vous souhaitez personnaliser au maximum vos rendus, vous pouvez utiliser ce genre de template :

Code : PHP - Template Twig
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
<form action="{{ path('store_product') }}" method="post" {{ form_enctype(form) }}>
    {{ form_errors(form) }}

    <div>
        {{ form_label(form.name) }}
        {{ form_errors(form.name) }}
        {{ form_widget(form.name) }}
    </div>

    <div>
        {{ form_label(form.price) }}
        {{ form_errors(form.price) }}
        {{ form_widget(form.price) }}
    </div>

    {{ form_rest(form) }}

    <input type="submit" />
</form>

Bien sûr, dans la réalité, on utilisera une boucle pour afficher tous les champs plutôt que de faire un par un les blocs <div></div>.


Finalement, la validation des données envoyées par l'utilisateur se fait grâce à un second composant (aussi intégré par défaut) qui vérifie si tous les champs obligatoires sont bien remplis et si toutes les informations envoyées sont valides.

Image utilisateur En savoir plus sur les formulaires dans Symfony2


Des configurations très simples


L’utilisation de fichiers de configuration est très importante pour un framework. Cela permet de pouvoir s’adapter à tous les besoins des développeurs. On peut par exemple y configurer le comportement général du site (environnement en mode développement, mode test ou mode production), le Routing du site (En savoir plus sur le Routing), ou encore la gestion de la sécurité. Les fichiers de configuration peuvent utiliser plusieurs types de scripts : YAML, XML ou PHP. En général, YAML est préféré, car il est beaucoup moins verbeux que ses deux confrères. Vous pouvez bien entendu utiliser les trois types de scripts en même temps.


Symfony2, une performance accrue


Symfony2 est un framework très rapide, et cela parce qu’il utilise un système de cache très puissant : le cache HTTP. De plus Doctrine 2 utilise lui-même un système de mise en cache pour les résultats des requêtes, ce qui permet de soulager le serveur gérant la base de données.

Image utilisateur En savoir plus sur le cache HTTP.


Liens et sources



90 Participations

Pour accéder à cette section
Connectez-vous !
connexion_rpx
Page 1  2  3  Suivante
Pseudo Discussion
1 visiteur sur cette news (0 membre et 1 Anonyme)
Page 1  2  3  Suivante
Hors ligne Keeper # Posté le 28/07/2011 à 12:29:53
Avatar

Ville : Port saint père
Pays : France métropolitaine
Études : INSA Rennes

Citation : news
Cette facilité de prise en main constitue l'un des points forts du projet.


Oui enfin il ne faut quand même pas se leurrer, Symfony 2 reste assez compliqué à prendre en main comparé à d'autres frameworks comme CodeIgniter ou CakePHP. Symfony est très complet et puissant, mais ça a un cout en terme de complexité. Pour un projet de taille moyenne, qui peut tout juste profiter d'un framework, le temps de prise en main sera trop long par rapport au développement total du projet. Ça peut même être décourageant au début. Par contre une fois maitrisé c'est sans doute le bonheur...
Hors ligne Quentin01 # Posté le 28/07/2011 à 12:30:19
Pink pony power !
Avatar
Flux RSS

L'arrivée de cette news et du tutoriel, franchement on parle beaucoup de Symfony 2 sur le SDZ en ce moment :p

Portfolio | zCOACH en Developpement Web. Spécialités : Jeux en Lignes, Temps Réel
En train de rédiger un big-tutoriel sur Doctrine 2 ! Cherche co-rédacteur !
Pour une aide sérieuse, ajoutez moi sur MSN ou Skype.

Image utilisateur
Rejoignez nous sur le chan #mlp sur irc.epiknet.org !

Solution de remboursement de forfait simple et rentable !
 
Hors ligne Zhela # Posté le 28/07/2011 à 12:56:45
Avatar

Ville : Court-st-etienne
Pays : Belgique
Études : Université catholique de Louvain

Assez sexy tout ça, mais les Bundles ça fait un peu peur quand même, j'ai pas trop envie d'un Web "clé-sur-porte"...
 
Hors ligne Aerhus # Posté le 28/07/2011 à 13:21:09
Ca pandouille !
Avatar

Ville : Seraincourt
Pays : France métropolitaine

Eh ben je viens me mettre à symfony il y a quelques jours, d'abord avec la version 1.4, puis avec la version 2 (en RC). Et c'est vrai que la différence est bien là, au début c'était un peu déroutant de perdre l'ancienne architecture, mais finalement je commence à m'y faire et j'avoue aimer cette modularité. :) Question performances, je n'ai pas pu faire de test mais j'ai lu je ne sais où que Symfony2 serait 3 fois plus rapide que ses prédécesseurs (mais information à vérifier...).

Par ailleurs je pense qu'il aurait été pas mal de citer des gros projets utilisant Symfony2, comme Dailymotion qui est dessus depuis un moment ou encore sûrement le futur phpBB4 (ils discutent avec les développeurs pour une éventuelle migration).

Citation : Zhela
mais les Bundles ça fait un peu peur quand même, j'ai pas trop envie d'un Web "clé-sur-porte"...


Au contraire, ça offre une bien meilleure modularité et étend par là les possibilités offertes.

EDIT : Cliquez ici pour avoir un résumé du Symfony Live 2011 (très intéressant pour voir les nouveautés, mais clairement long si vous voulez tout lire :lol: ).
 
Hors ligne Mow # Posté le 28/07/2011 à 13:22:13
La vie sans compromis.
Avatar
Flux RSS

Ville : Grenoble
Pays : France métropolitaine

Citation : Keeper
Oui enfin il ne faut quand même pas se leurrer, Symfony 2 reste assez compliqué à prendre en main comparé à d'autres frameworks comme CodeIgniter ou CakePHP.

Symfony c'est uniquement pour faire des gros projets.
 
Hors ligne pacman2 # Posté le 28/07/2011 à 13:34:44
Zzzz
Avatar

On peut faire des choses pas mal surtout avec l'ORM :)
 
Connecté stombaker # Posté le 28/07/2011 à 13:40:12
Avatar

Études : IUT Nantes

Ca a l'air sympathique, mais tous ces modules font peur pour ceux qui commencent les frameworks...

Enfin, un framework aussi complet ne peut pas être aussi simple. :) (déjà dit ?)
 
Hors ligne willard # Posté le 28/07/2011 à 14:04:26
La mouette au dessus de tout
Avatar

- Qu'en est-il de la migration du SDZ sur symphony ?
- Est-ce qu'il passera directement sur Symphony 2 ?
- Contruire à base de symphony (d'après la news) est simple, migrer d'une architecture maison vers symphony est très difficile (Cf. SdZ). J'ai bon ?
 
Hors ligne Nanocom # Posté le 28/07/2011 à 14:07:13
Avatar

Ville : Ittenheim
Pays : France métropolitaine
Études : INSA Lyon

Pour ceux qui disent que Symfony2 est réservé aux gros projets, je vous invite à faire un tour du côté de Silex, un micro-framework PHP basé sur les composants Symfony2 mais beaucoup plus léger, adapté aux petits projets. Peut-être aurait-il fallu en parler dans la news ?

Mais surtout, une fois qu'on maîtrise vraiment Symfony2, peu importe la taille du projet, ça va toujours plus vite et mieux qu'en PHP brut.
Hors ligne Aerhus # Posté le 28/07/2011 à 14:35:04
Ca pandouille !
Avatar

Ville : Seraincourt
Pays : France métropolitaine

Citation : Nanocom
Mais surtout, une fois qu'on maîtrise vraiment Symfony2, peu importe la taille du projet, ça va toujours plus vite et mieux qu'en PHP brut.


Tout à fait d'accord, pour moi la principale raison pour laquelle j'utilise (je continue d'apprendre...) Symfony est qu'il me permet de bien structurer mon projet et de le maintenir très facilement. Peu importe la taille du projet*, tant qu'il permet de facilement développer mon site web alors pourquoi pas. D'autant plus que les performances promises semblent très bonnes et que la modularité permet de n'utiliser que les bundles (ou modules...) fournis avec le framework utiles à notre projet. Donc effectivement je trouve aussi que cette nouvelle version se prête plutôt bien à de "petits" projets (ou du moins + que les versions antérieures).
Evidemment quand on n'est pas habitué à utiliser Symfony, on peut être dérangé par son architecture (tout est divisé ce qui fait des fichiers/dossiers un peu partout :-° ) mais une fois qu'on "est dans le bain", ça va tout seul j'ai envie de dire. ^^

* Evidemment si vous avez qu'1 page web à afficher, c'est inutile... Mais vous m'avez bien compris. :p
 
Hors ligne Zazou # Posté le 28/07/2011 à 15:02:01
Avatar

Ville : Le havre
Pays : France métropolitaine
Études : IUT Havre

Je suis aux anges ! Depuis le temps que j'attendais un vrai tutoriel sur Symfony 2 pour me lancer dans ce framework.
Merci pour la news qui est vraiment très explicative et donne une réel envie de se plonger dans ce framework.

Pour des missions ponctuelles et rémunérées, une seule adresse --> http://www.isabellejaffrezic.fr
 
Hors ligne winzou # Posté le 28/07/2011 à 15:36:43
lala
Avatar
Modérateurs

Ville : Singapour
Pays : Singapour
Études : Ecole Centrale de Lyon

Citation : willard
- Qu'en est-il de la migration du SDZ sur symphony ?
- Est-ce qu'il passera directement sur Symphony 2 ?
- Contruire à base de symphony (d'après la news) est simple, migrer d'une architecture maison vers symphony est très difficile (Cf. SdZ). J'ai bon ?

De façon générale si tu as un projet sous symfony1, l'interet de le migrer vers Symfony2 est vraiment nul. La 1 tourne très bien, et risquer de tout casser en migrant n'apporte rien.

Par contre pour les nouveaux projets, une fois la bête prise en main (avec un bon tuto par exemple :-° ), ouais ca envoie du lourd. Et bien content que la version stable sorte, j'en avais, comme pas mal de développeurs sf, marre de passer plus de temps à mettre à jour les versions qu'à développer mon propre projet !

Un tutoriel pour débuter avec le framework Symfony2.
Chapitre en beta-test : Déployer son site Symfony2 en production, donnez vos avis !

Je recherche toujours quelqu'un capable de faire des icônes sympas pour les chapitres du tutoriel, contactez-moi, merci !
 
Connecté Zoompad # Posté le 28/07/2011 à 16:18:41 Commentaire supprimé pour le motif suivant : Le flood est strictement interdit.
Hors ligne Vivi' # Posté le 28/07/2011 à 18:11:00

Ville : Figeac
Pays : France métropolitaine

Le jour où ils sauront faire une doc digne de ce nom, ça pourra être intéressant...
Connecté The Worse Boss. # Posté le 28/07/2011 à 18:13:35
Avatar
Groupe : Bannis

framework très nul... ;)
Hors ligne Dinosaure # Posté le 28/07/2011 à 18:23:02
dino-dinosaure ?
Avatar
Flux RSS

Ville : Le paradou
Pays : France métropolitaine
Études : Epitech Montpellier

Excelent argument :-° , il n'y a pas à dire.
Connecté The Worse Boss. # Posté le 28/07/2011 à 18:26:19
Avatar
Groupe : Bannis

Hors ligne Zazou # Posté le 28/07/2011 à 18:30:49
Avatar

Ville : Le havre
Pays : France métropolitaine
Études : IUT Havre

Lol Jelix, le framework qui ne joue pas du tout dans la même cours...

Pour des missions ponctuelles et rémunérées, une seule adresse --> http://www.isabellejaffrezic.fr
 
Hors ligne jojolapine # Posté le 28/07/2011 à 19:51:42
Avatar

Ville : St etienne
Pays : France métropolitaine

Citation : winzou
Citation : willard
- Qu'en est-il de la migration du SDZ sur symphony ?
- Est-ce qu'il passera directement sur Symphony 2 ?
- Contruire à base de symphony (d'après la news) est simple, migrer d'une architecture maison vers symphony est très difficile (Cf. SdZ). J'ai bon ?

De façon générale si tu as un projet sous symfony1, l'interet de le migrer vers Symfony2 est vraiment nul. La 1 tourne très bien, et risquer de tout casser en migrant n'apporte rien.

Par contre pour les nouveaux projets, une fois la bête prise en main (avec un bon tuto par exemple :-° ), ouais ca envoie du lourd. Et bien content que la version stable sorte, j'en avais, comme pas mal de développeurs sf, marre de passer plus de temps à mettre à jour les versions qu'à développer mon propre projet !

Je me trompe peut-être mais il se pourrait que simple-it veuille travailler avec Symfony2 (que ce soit pour le sdz ou pour d'autres projets...)Citation : http://www.siteduzero.com/emploi/142/developpement-web-php-symfony-senior
Migration progressive du framework web interne de Simple IT, en partie sur symfony 1.4, vers Symfony2


 
Hors ligne swermxpress # Posté le 28/07/2011 à 19:59:54
Docteur de vos mots
Avatar

Ville : Taissy
Pays : France métropolitaine

C'est une super apparition sur le sdz : une longue news accompagnée du tutoriel :p
 
Hors ligne adilefebvre69 # Posté le 28/07/2011 à 20:16:10
Avatar

Ville : Sceaux
Pays : France métropolitaine

Je confirme, le SdZ va migrer vers Symfony2. C'est dans le recrutement.

Vous êtes développeur PHP, Python, Java, JavaScript, C, C++ ou .NET ? Venez rédiger des exercices pour ExoProg : ici.
[Topic unique] Pilotes réels et virtuels
 
Hors ligne PC17pouces # Posté le 28/07/2011 à 20:40:53
Avatar

Ville : Cravant les coteaux
Pays : France métropolitaine

Personnellement, moi j'utilise Symfony2 même pour un projet petit pour une raison principale : je n'ai pas à me soucier de la sécurité de l'application.

Bien sur, je reste d'accord avec tout le monde sur le fait qu'il est inutile de l'apprendre juste pour faire un petit projet.

Et puis perso, une fois qu'on a touché à Doctrine 2, impossible de s'en passer. De plus ce dernier est très facile à intégrer dans un projet sans Symfony.

PS : On n'a pas parlé de la migration du SdZ dans la news car on ne savais pas exactement s'il migrais vers sf1.4 ou Sf2. Voila voila

Il y a 10 sortes de personnes sur terre : ceux qui comprennent le binaire et ceux qui ne le comprennent pas.
 
Hors ligne planete.game57 # Posté le 28/07/2011 à 21:46:58
Avatar

Études : IRIS

Merci pour cette news très détaillée, bien écrite et facilement compréhensible. ;)

Vu le succès qu’à ce framework, j’aimerais bien tester bien qu’il soit un peu difficile d’accès.
Merci pour le lien vers le tutoriel. :)

xHTML/CSS |||||||||| 100% | PHP/MySQL |||||||||| 100% | Langage C |||||||||| 8.5%
Python |||||||||| 100% | JavaScript |||||||||| 5.5% | Photoshop |||||||||| 0.0%
Smarty |||||||||| 100%

Image utilisateurImage utilisateur
 
Hors ligne adilefebvre69 # Posté le 28/07/2011 à 21:48:42
Avatar

Ville : Sceaux
Pays : France métropolitaine

Citation
Migration progressive du framework web interne de Simple IT, en partie sur symfony 1.4, vers Symfony2
sur cette page : http://www.siteduzero.com/emploi/142/d [...] ymfony-senior
Donc c'est sûr, le SdZ migre vers Sf2.

Vous êtes développeur PHP, Python, Java, JavaScript, C, C++ ou .NET ? Venez rédiger des exercices pour ExoProg : ici.
[Topic unique] Pilotes réels et virtuels
 
Hors ligne Dario93 # Posté le 28/07/2011 à 23:59:01
Geek suisse
Avatar

Ville : Fribourg
Pays : Suisse

Magnifique !

J'ai suivi tout le tutoriel jobeet il y a peu et j'étais pas totalement satisfait par Symfony. Mais maintenant on dirait bien que je suis servi.
En plus il y a un tutoriel sur le SdZ ! Symfony2 et Doctrine avancent à pas de géants, pour le bonheur de tous ^^ .

Citation : winzou
Vous savez déjà faire des sites Internet ? Vous maîtrisez votre code, mais n'êtes pas totalement satisfait ? Vous avez trop souvent l'impression de réinventer la roue ?

Superbe introduction au tutoriel dit en passant... :-° le "Vous avez trop souvent l'impression de réinventer la roue ?" est tellement vrai.

Développement Web :

(x)HTML, CSS, PHP, SQL, JavaScript et AJAX le tout avec Symfony... Et la vie est belle ^^
 
Hors ligne Snipy11 # Posté le 29/07/2011 à 01:46:48
Avatar

Études : ESIEE Engineering Paris

Content que cette version stable sorte :D
Je l'attendais avec impatience :D
 
Hors ligne DRAGNUCS # Posté le 29/07/2011 à 02:33:16
The lord of Dragons
Avatar
Flux RSS

Ville : Tanger
Pays : Maroc

Je viens tout juste d'apprendre la version 1.4. J'espère qu'il n'aura pas de chnagement radical.

Utilisez le coupon DRAGONCOUPON pour avoir 25%
de reduction ou DRAGONCOUPON994OFF pour $9.94 de réduction chez hostgator.com
Image utilisateur
 
Hors ligne Zazou # Posté le 29/07/2011 à 03:02:10
Avatar

Ville : Le havre
Pays : France métropolitaine
Études : IUT Havre

Tu seras déçu alors. Symfony2 n'a rien à avoir symfony 1.x ...

Pour des missions ponctuelles et rémunérées, une seule adresse --> http://www.isabellejaffrezic.fr
 
Hors ligne Aerhus # Posté le 29/07/2011 à 04:15:41
Ca pandouille !
Avatar

Ville : Seraincourt
Pays : France métropolitaine

Citation : DRAGNUCS
Je viens tout juste d'apprendre la version 1.4. J'espère qu'il n'aura pas de chnagement radical.


Comme l'a dit Zazou, le changement est important : l'architecture a été repensée et est vraiment différente (ne t'attends pas à développer tes applications dans le dossier app/ par exemple, ou encore à mettre des fichiers css/js dans le dossier web/...). D'autres éléments ont changé : fini les plugins etc, bonjour les bundles, ou encore des commandes qui diffèrent au niveau de la console.
Bref il va falloir une petite réadaptation. Mais bon d'un autre côté Symfony2 garde twig, doctrine et autres couches qu'on a l'habitude dans les versions 1.x. Donc finalement une fois l'adaptation faite côté architecture, tu retomberas rapidement sur tes pieds.
 
Hors ligne VinceA # Posté le 29/07/2011 à 08:29:54
Geek multiplateforme
Avatar
Groupe : Bannis

Études : Polytech Paris Sud

Citation : Aerhus
Citation : DRAGNUCS
Je viens tout juste d'apprendre la version 1.4. J'espère qu'il n'aura pas de chnagement radical.


Comme l'a dit Zazou, le changement est important : l'architecture a été repensée et est vraiment différente (ne t'attends pas à développer tes applications dans le dossier app/ par exemple, ou encore à mettre des fichiers css/js dans le dossier web/...). D'autres éléments ont changé : fini les plugins etc, bonjour les bundles, ou encore des commandes qui diffèrent au niveau de la console.
Bref il va falloir une petite réadaptation. Mais bon d'un autre côté Symfony2 garde twig, doctrine et autres couches qu'on a l'habitude dans les versions 1.x. Donc finalement une fois l'adaptation faite côté architecture, tu retomberas rapidement sur tes pieds.


C'est bizarre, mais à la lecture de ton commentaire, je n'ai pas l'impression que tu aies été développeur sf1.x ^^. Les assets (js/css/img) se retrouvent quand même dans le dossier /web/ dans Sf2, et il n'y a jamais eu de couche Twig dans sf1.x.

Le point commun entre les deux versions, c'est la philosophie du développement imposée par le modèle MVC. Les "modules" de sf1.x deviennent des Controller agrémentés de leurs templates.

D'ailleurs dans l'exemple des bundles cité dans la news, on parle de découper le site du zéro en bundle, mais c'est uniquement dans un esprit de réadaptation ou de partage de source. Pour un projet plus fermé et spécifique au SDZ, je pense qu'un découpage en Controller serait plus facile à gérer ;) (et pas plus difficile à répartir entre devs).

Enfin, mon avis sur le sujet, pour ne pas faire trop de HS :
J'ai encore du mal à m'y faire, étant très habitué à sf1.4, mais TWIG est vraiment un énorme plus, et Doctrine 2 "dépote sa race" ( :p ) face à la version précédente.
Je trouve aussi la conception du projet beaucoup plus "propre" car l'approche est très inspirée des standards du web (et présentée comme telle).

Cordialement~

Image utilisateur
 
Pour accéder à cette section
Connectez-vous !
connexion_rpx

Revenir à la liste des news

Lire aussi