- Symfony
-
Projet par défaut de Symfony
Développeur Sensio Labs Première version 18 octobre 2005 Dernière version 2.0 (28 juillet 2011) [+/-] Écrit en PHP Environnement Multiplate-forme Langue Multilingue Type Framework Licence MIT Site web www.symfony-project.org www.symfony.com modifier Symfony est un framework MVC libre écrit en PHP 5. En tant que framework, il facilite et accélère le développement de sites et d'applications Internet et Intranet.
Sommaire
Histoire
Le site du framework Symfony a été lancé en octobre 2005. À l'origine du projet, on trouve une agence web française, Sensio, qui a développé ce qui s'appelait à l'époque Sensio Framework[1] pour ses propres besoins et a ensuite souhaité en partager le code avec la communauté des développeurs PHP.
Le projet est alors devenu symfony (car le créateur voulait garder les initiales SF comme "Sensio Framework"), puis Symfony à partir de la version 2.0[2].
La dernière version stable de Symfony est la 2.0, datée du 28 juillet 2011[3],[4].
Utilisations
Symfony est utilisé par Askeet et beaucoup d'autres applications[5], dont Delicious[6] et les 20 millions d'utilisateurs de Yahoo! Bookmarks[7]. En 2009, Dailymotion a porté son code sur Symfony et a continué la transition[8].
Fonctionnalités
Symfony utilise PHP5 (version >= 5.2.4).
Symfony propose entre autres :
- Une séparation du code en trois couches, selon le modèle MVC, pour une plus grande maintenabilité et évolutivité
- Un templating simple, basé sur PHP et des jeux de "helpers", ou fonctions additionnelles pour les gabarits…
- Des performances optimisées et un système de cache pour garantir des temps de réponse optimums
- Une gestion des url parlantes, qui permet de formater l'url d'une page indépendamment de sa position dans l'arborescence fonctionnelle
- Un système de configuration en cascade qui utilise de façon extensive le langage YAML
- Un générateur de back-office et un "démarreur de module" (scaffolding)
- Un support de l'internationalisation - Symfony est nativement multi-langue,
- Une couche de mapping objet-relationnel (ORM) et une couche d'abstraction de données
- Le support de l'Ajax
- Une architecture extensible, permettant la création et l'utilisation de plugins
Pour développer avec Symfony, l'utilisation de la ligne de commande est obligatoire.
Forces et faiblesses
La qualité du code de Symfony le rend très adaptable :
- le code est découplé
- la configuration en cascade application / module permet de personnaliser simplement de nombreux paramètres
Symfony possède une importante communauté d'utilisateurs et de développeurs. De nombreux sites sont développés avec Symfony[5].
La documentation de Symfony, notamment en anglais, est très complète et à jour, et favorise grandement son apprentissage :
- des tutoriels de référence : Askeet et Jobeet[9], pour apprendre rapidement (en environ un mois, à raison d'une heure par jour)
- deux livres, sur le framework et sur les formulaires
- une API
- des cheat sheets
- des traductions dans de nombreuses langues
Néanmoins, la plupart des ressources sont disponibles uniquement en anglais - même si des efforts de traduction localisée sont en cours sur le wiki communautaire.
La fonctionnalité "standalone" — permettant à partir d'une instruction en ligne de commande d'insérer les bibliothèques de Symfony dans le dossier de développement — permet le déploiement du framework sur la plupart des hébergements mutualisés fournissant PHP5, sans nécessiter la ligne de commande.
Notes et références
- (en) Forum de Symfony sur http://forum.symfony-project.org/. Consulté le 18 février 2011
- (en) Gilles Taupenas, « Symfony Live Day 2 » sur http://www.symfony-project.org/. Consulté le 18 février 2011
- (en) The symfony framework Installation sur http://symfony.com/. Consulté le 1er juillet 2011
- (en) Fabien Potencier, « symfony 2.0 » sur http://symfony.com/. Consulté le 1er juillet 2011
- (en) ApplicationsDevelopedWithSymfony sur http://trac.symfony-project.org/. Consulté le 18 février 2011
- (en) Fabien Potencier, « Delicious Preview built with symfony » sur http://www.symfony-project.org/. Consulté le 18 février 2011
- (en) Francois Zaninotto, « Yahoo! bookmarks uses symfony » sur http://www.symfony-project.org/. Consulté le 18 février 2011
- (en) Fabien Potencier, « Dailymotion, powered by symfony » sur http://www.symfony-project.org/. Consulté le 18 février 2011
- (fr+en) Practical symfony sur http://www.symfony-project.org/. Consulté le 18 février 2011
Voir aussi
Articles connexes
Liens externes
- (en) Site officiel
- (en) Symfony sur Ohloh
- (fr) Tutorial d'introduction
- (fr) Tutorial d'introduction à Symfony2
- #symfony : channel IRC (#symfony sur Freenode)
- #symfony-fr : channel IRC francophone (#symfony-fr sur Freenode)
Catégories :- Framework de programmation
- PHP
- Logiciel libre sous licence MIT
Wikimedia Foundation. 2010.