What is Symfony?
The Symfony framework is an Open Source PHP5 framework for the development of webapplications. Because of this professional, well integrated framework, dynamic database driven webapplications can be build quick, and modern web 2.0 techniques can be used like AJAX and RSS.
Why choose the symfony framework?
For the development of dynamic websites in PHP are different frameworks available, for example CakePHP, Zend en Symfony. Platina Designs chose the Symfony framework because it's the most powerfull and integrated framework for PHP5, with an active and professional Open Source community. Symfony integrates the best tools and ideas out of the PHP Open Source world (a.o. ORM layer as Propel / Doctrine, YML, MVC architecture, etc.) and is inspired by other frameworks like some of the PHP frameworks mentioned before, but for example also by the the Ruby on Rails framework.
In addition to that, the Symfony framework can easiliy be extended by personal code, or be extended with functions / code of other frameworks or software packages.
Benefits of Symfony for the customer
The above points are all very useful for the developer, but what are exactly the benefits for you as customer to use a framework like Symfony? Below a summary of the benefits:
- Quick development of a custom-made website build on proven techniques and standards.
- Less bugs because of the use of tested code and less lines of code (which always results in less chance of bugs and lower costs) Symfony contains 8,500 automated unit and functional tests!
- Implementation of the latest techniques, like AJAX and Web2.0 ideology, MVC, Form framework, possibility for automed testing, etc.
- Database independent because of the ORM layer Propel or Doctrine.
- Webapplications are later on easy to modify with the clear MVC (Model View Controller) structure that divides an application into seperated layers. That's why new webdevelopers will understand the code of an existing website quickly.
-
Very suitable for development methodologies like XP (Extreme Programming).
- Published under the MIT open source license. This is a free license and will allow any commercial use and does not require that all code based on this is also open source.
- Sensio, the company behind the Symfony framework guarantees also long term support.
- Proven value and quality by use in great success projects like Yahoo! Answers and Delicious.
Benefits of Symfony for the developer
With the numerous ideas and techniques found by the creators of Symfony in the Open Source world, a very stable and robust framework has been created. Developers gain time in the development process and get better maintainable and testable code. In addition to the benefits of Symfony for the customer mentioned above, is below a summary listed with the technical aspects of Symfony:
- All code is object oriented and completely in PHP5.
- Implementation of the Model View Control MVC architecture for clear and flexible structure.
- Database abstraction by Object Relational Mapping (ORM): de database tables are available as objects in the code. De ORM is based on Propel or Doctrine.
- Automated en configurable backend generation.
- Integration of common javascript libraries which included for example functionality to use the AJAX technique.
- Very advanced cache system which has various cache type options like file cache, apc cache, memcache, and some others.
- A completely own written YML (YAML) parser, so configuration files and database model files can be written in a simple and very quick way. In contrast to the alternative of endless XML tags.
- Symfony generates object oriented code for the most common functions based on the database model.
- Generation of Create Read Update Delete (CRUD) interfaces for database tables.
- Working with different environments; production, development (where for example the debug toolbar becomes active), test, but also a custom environment is possible.
- Contains 8,500 automated unit and functional tests! This results into a very stable and robust framework.
- Very suitable for development methodologies like XP (Extreme Programming).
History of Symfony
Symfony is developed by one person: Fabien Potencier, owner and founder of Sensio in Paris. The main reason he developed Symfony was for use in his own company to speed up the development process for building websites and to automate many common tasks: this results in quickly developed code, with less lines and therefore results in less bugs. By making Symfony available for the Open Source community, the community contributes by fixing bugs and the addition of functionalities by the development of Plugins. He was inspired by the creation of the Symfony framework in PHP5 by other frameworks like a.o. Ruby on Rails and Mojavi3-DEV, and integrated this way the best development tools whithin Symfony.

