This article was originally made in 2009...Know it's obvious but here's the article :
I am often asked why i use Symfony, some developers (although it gets quite rare) developed in PHP5 and may not understand the value of a PHP framework. Training time for this type of tool is quite long (or not now you have a lot of documentation) but we must recognize the once mastered ... trust me: it changes lives.
For me this is my former technical project manager George Morosan (
http://www.george-morosan.com / ) who told me about when I was in 3rd year of internship in a Parisian web agency as a PHP developer.
At this time Symfony was just at the very beginning, I was just heard about it and many developers still developed from scratch (or a site often used "standard", a kind of site they altered skeleton later to save time and do not leave exactly zero).
Since things have changed and you want to reduce your costs in order to have fair prices compared to the competition you have to find ways to be more productive as a agency or a freelance.
For group work, many of you are now using a SVN (and now GIT), something that was not always used a few years ago. At first you probably find it a little complicated and you did not see the usefulness and yet now you cannot do without it so it is convenient and makes life easier as a developer. I am wrong ? Symfony is the same way.
Symfony what is it?
This is a set of tools writen in PHP, a working environment that allows you to develop
faster and
cleaner. In addition to providing a rich library, it provides you the possibility to generate a skeleton website, your classes and your database from a single command line)
Symfony allows you to develop in MVC separating his 3 layers. It also provides you the ability to do unit testing, functional testing, managing multilingual easily use configuration files easily, making the url rewriting SUPER EASY ... and many other features.
Save time (and therefore money) on the implementation of your web project, and also its maintenance because your code is more easily modified and structured which allows to scale your site more easily.
Examples site in Symfony?
The first to come to my mind it is Dailymotion... One of the bigest competitors of Youtube ... at the time given the number of users on this site, you can imagine he's be fully optimized to use minimal resources. The advantage is that with Symfony you can handle the caching of information and if you properly plan it, your little application will be very effective.
Why you are afraid to get started?
Often you're too lazy to get started because it'll take you time to train and I too long put me there for the same reason. We must think and learn new things. While this is interesting, this takes effort ...
Of course there are prerequisites for learning to use symfony, for me it is first necessary:
- Know the principle of the MVC
- Know how to use PHP object (PHP5)
- Consider a minimum and be a little curious.
Having developed somewhat Magento, I assure you that Symfony is happiness!
Documentation and resources at will!
The advantage of the Symfony community is also documentation on the official website you go to find lots and lots for free ... I urge you to start at the official website tutorial.
Once realized this tutorial, you'll master the basics of Symfony and you are ready to tackle a real project with the framework.
In addition, there are plugins, for example sfGuard (1.4) or FOSUserBundle (Sf 2 and 3) to manage the security of your applications ... and there are a lot of plugins that allow you to not reinvent the wheel every time.
When to use Symfony?
Symfony only when the customer has a special need is for the
Specific development.
Obviously if you want to make a blog or e-commerce site, surely there are other solutions best adapted to your project, I am thinking of Wordpress for blogs and Magento or Prestashop for e-commerce website (but it is still possible). For everything else there is
Eurocard mastercard Symfony .
If you have further clarification was made on the subject, feel free to leave a comment.
Pierre