Jump to content

Symfony 1.0 finale dans les bacs


Recommended Posts

Salut à tous,

J'attire votre attention sur la sortie de la version finale et stable du génialissime Framework PHP 5 : Symfony

Site : http://www.symfony-project.com

Communiqué : http://www.symfony-project.com/weblog/2007...0-released.html

J'utilise ce framework depuis bientôt 1 an et je suis en train de développer mes 7 et 8e projets avec ce framework (après avoir développé de petits sites statiques - pour débuter, des sites dynamiques, un site e-commerce et notre intranet).

Ce framework nécessite une très bonne connaissance de PHP et de la programmation web (et programmation orienté objet), il faut donc plutôt être développeur web pour utiliser ce framework.

Il faut un peu de temps pour le prendre en main (une très bonne documentation : un livre, un vrai tutorial sur 24 jours, API & une bonne communauté : ML, forum, trac, irc, wiki, etc) mais quand on le connait bien c'est une tuerie, on a l'impression de jouer au légo pour monter des projets divers et variés et surtout personnalisés jusqu'au bout des ongles.

Ce framework n'est pas un CMS, ni un CMF, c'est un framework web qui n'apporte pas d'outils pour créer des pages, des articles, gérer les utilisateurs, les catégories, etc. Par contre, avec lui, on peut développer rapidement des sites dynamiques, des intranet ou des sites de ventes en ligne très flexibles et personnalisée : à la manière de Ruby On Rails (mais en 100% PHP5) : le framework simplifie le boulot, est très configurable et apporte des outils très pratiques (plugins, ORM, ajax, scaffolding, internationalisation, url_rewriting, cache, debugging, logs, template, mvc, etc).

Si vous avez des questions relatives à ce framework, n'hésitez pas.

Link to post
Share on other sites

Salut,

je n'ai jamais regardé de prêt les frameworks, je ne comprends pas trop à quoi ils servent, ce qu'ils apportent de plus à une programmation "standard"...

Merci par avance pour les explications

Link to post
Share on other sites
Existe-t-il de la documentation en français ?

Pas encore mais les principaux contributeurs sont français, il existe aussi une mailing liste en français (elle n'est pas très active mais si tu y poses des questions, tu auras des réponses ;) ). Un livre est sorti il y a 3 semaines et une version gratuite de ce livre est disponible en ligne : http://www.symfony-project.com/book/trunk .

Link to post
Share on other sites

ça fait un bout de temps que je regarde ce projet qui a l'air très intéressant, d'autant plus que yahoo s'en est servi pour gérer son application yahoo bookmark ce qui laisse présumer de la qualité de ce framework :)

Faut que je trouve un peu de temps pour tester la bête :cool:

_AT_SylvioCO : Il serait possible de voir quelques unes de tes applications développer avec Symphony ?

Link to post
Share on other sites

Site que j'ai développé avec Symfony (Com-Océan)

Sites statiques (pour débuter) :

- http://www.gites-du-cormoran.com

- http://www.foire-cavaillon.org

Sites dynamiques avec contenu administrable et base de données (actus, produits, ...)

- http://www.belle-mare.com

- http://www.chateaularoque.com (un peu spécial au niveau de l'intégration flash/html)

Site e-commerce (catalogue produit, panier, gestion commande, ...) bientôt en ligne :

- http://www.corporelle.fr/frontend.php (paiement en ligne à venir - charte graphique non réalisé par nous...)

+ 2 sites en cours de dev

+ notre Intranet (Ajax, gestion contact LDAP, gestion du serveur du fichier pour créer automatiquement les dossiers projets/clients)

---

Au niveau de la doc :

- Documentation officielle en anglais très complète dispo sur le site ou en livre depuis peu

- Un très bon tutoriel de 24 pages (sur 24 jours) : développement d'un "Yahoo anwers" like

- etc (autre tuto, snippets) ...

Pour le français :

- Les fondateurs du projets sont Fabien et Français, 2 personnes de l'agence web Sensio à Paris

- Une mailing list (symfony-fr_AT_googlegroups.com) et un canal IRC en français (#symfony-fr sur Freenode)

- Un projet de traduction de l'ensemble de la doc en français (et d'autres langues) sur le Wiki.

Edited by SylvioCO
Link to post
Share on other sites

Pour ce qui de sites dynamiques "standards" est-il vraiment justifié d'utiliser un tel système, je pense qu'un CMS fait très bien l'affaire. Je me tournerai vers Symphony plutôt pour des applications web aux fonctionnalités spécifiques.

En tout cas merci pour les exemples :)

Si d'autres ont des exemples d'applications utilisant symphony c'est intéressant de voir ce que l'on peut faire avec. Richelieu finance l'utiliserait mais je sais pas dans quel but.

Link to post
Share on other sites

Effectivement pour de petits sites ce n'est peut-être pas utile pour tout le monde ici d'utiliser Symfony.

Enfin dans mon cas, je n'ai jamais trop aimé les CMS qui posent souvent trop de contrainte et pas assez de fléxibilité :

- back-office : trop compliqué pour l'utilisateur final (trop "usine à gaz")

- frontend : structure trop figée, modèle de template etc. pour certains CMS.

- base de données et gestion du contenu : idem, on ne peut pas avoir des petites base de données simple et vraiment personnalisée pour le client

Avant Symfony, j'avais développé mon propre "mini framework" basé sur l'ORM Pear::DataObject me permettant surtout de créer des back-office perso (adaptable à n'importe quel type de BDD) rapidement et simplement. Cependant je réinventais la roue et les fonctionnalités étaient super limité (et le code bordelique). Bref, j'ai donc cherché un Framework et trouvé Seagull puis Symfony qui a été une révélation : tous les critères et fonctionnalités que je cherchais y était réunit (et j'ai cherché pendant plus d'un an).

Avec Symfony, je fais ce que je veux (une résultat beau, simple et efficace pour le client) même si ça m'oblige à un peu plus de boulot

Et encore, ça me prend pas tant de boulot en plus car je suis en train de développer :

- Un mini-CMS spécifique à Symfony que je réutilise sur chacun de mes sites

- Des modules que je réutilise à chaque fois : actualités, formulaire contact en Ajax, etc

- etc.

Bref, c'est un gros investissement de temps au départ (apprentissage du framework, expérience de développement, etc) mais au final, c'est vraiment le top et je développe des sites nickel (au niveau adaptabilité, fiabilité, référencement, etc) rapidement et de manière agréable (l'impression de jouer au légo).

C'est aussi un choix personnel : je préfère me concentrer sur un seul outils que je connais très bien.

Cependant, il ne faut pas comparer un framework de ce type à un CMS, ça n'a pas grand chose à voir. Symfony peut être utilisé pour gérer du contenu mais pour beaucoup d'autres choses : e-commerce, intranet/extranet, site communautaire, etc.

Il faut espérer qu'un CMS officiel propre à Symfony (sous forme de plugin) voit le jour : des personnes comme moi (sur la ML fr) ont développé des mini CMS adapté à Symfony, ça va peut-être bientôt venir.

Edited by SylvioCO
Link to post
Share on other sites

Symfony fait partie des frameworks modernes et prometteurs qui permettent effectivement surtout de faire du sur-mesure dont le déploiement est très largement accéléré et optimisé par rapport à un développement traditionnel en partant de zéro.

C'est à mon sens l'essentiel de ce qu'un framework apporte.

Un CMS ne permet pas du tout le même niveau de customisation, ou alors au prix d'une maintenance et d'un développement complexifiée par le nombre de modifs qu'il faut faire au CMS à chaque MAJ du système d'origine (un cauchemard dont certains pourront témoigner !)

Un CMF est entre les deux (cas type de MODx), on part d'une base fonctionnelle mais on dispose de bien plus de liberté de personnalisation qu'avec un CMS tout en restant quand même moins flexible qu'un Framework pur comme Symfony qui n'est pas limité à la gestion de contenu mais carrémment à la construction d'applications web.

A mon avis ça résume bien...

En tout cas, la sortie de Symfony consolide la tendance : on cherche à faire toujours au plus près du besoin client tout en étant en mesure de proposer des temps de développement plus courts et des coûts plus raisonnables sur du spécifique. C'est donc très bien pour les utilisateurs finaux donc pour le web :)

Link to post
Share on other sites
Symfony fait partie des frameworks modernes et prometteurs qui permettent effectivement surtout de faire du sur-mesure dont le déploiement est très largement accéléré et optimisé par rapport à un développement traditionnel en partant de zéro.

Je ne suis pas sûr que la vitesse de développement et l'optimisation (si cela signifie recherche de performances) soient les principaux intérêt de Symfony ;). Comme sylvioCO l'a très bien écrit, ce que symfony apporte avant tout à un développeur c'est le respect des bonnes pratiques de développement et à une application c'est l'adaptabilité et la fiabilité.

Je suis exactement dans le même cas que SylvioCO je développais jusqu'à présent avec mon propre framework. Par manque d'expérience j'avais conçu un framework beaucoup trop souple et je découvre maintenant avec Symfony, qui est hyper structurée, les joies du refactoring continuel (l'image des legos est aussi très bonnes ;) ).

Edited by dièse
Link to post
Share on other sites

Hmmm, je pense quand même qu'entre partir de zéro et s'appuyer sur un framework comme le dit NiCoS permet quand même de ne pas ré-inventer la roue (donc gain de temps). Au delà de ça, il existe aussi à mon sens un gain de temps au niveau de la réflexion sur les briques fonctionnelles du framework : on trouve parfois des choses auxquelles on aurait pas pensé et qui permettent de proposer de nouvelles options à nos clients, non ?

Enfin, s'appuyer sur des briques développées par une communauté est quand même un gage d'optimisation et de qualité du code (plusieurs cerveaux aboutissent à un meilleur résultat qu'un seul, en tout cas j'ai pu le constater maintes fois sur les communautés open-source qui fonctionnent bien). Cela découle des bonnes pratiques effectivement mais aussi du fait qu'une équipe de codeurs de talent peut réaliser des choses qu'aucun individu (sauf cas très exceptionnel) ne peut atteindre seul.

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...