Kamis, 19 Agustus 2010

Know Your Symfony

Symfony is a web application framework written in PHP which follows the model-view-controller (MVC) paradigm. Released under the MIT license, Symfony is free software. The symfony-project.com website launched on October 18, 2005.
Symfony should not be confused with Symphony CMS, the Open Source XML/XSLT content management system.

The symfony framework is a full-stack MVC framework that helps you develop websites faster. It also establishes a set of best practices that will help you to develop maintainable and secure websites. And advocating best practices starts as soon as you want to install the framework itself.
Installing symfony is not very much different to installing any other PHP software but, to make your installation secure from the start, you should not just put all the files under your web root directory as many other installation guides may prescribe. Although it will take slightly more time to install symfony our way, a little extra effort at the beginning is really worth it in the long run. Also, as with any other PHP software installation, there are a lot of small traps that you can fall into that can make your experience harder than it needs to be, so we will try to help you avoid them.

This tutorial teaches you everything you need to get started with a new symfony project. From the web server configuration, installation of symfony itself, to the creation of an application; at the end of the tutorial, you will have a fully-working symfony application, ready to be used for your next project.
Symfony aims to speed up the creation and maintenance of web applications and to replace repetitive coding tasks. It requires a few prerequisites for installation: Unix, Linux, Mac OS or Microsoft Windows with a web server and PHP 5 installed. It is currently compatible with the following Object-relational mappings: Propel and Doctrine.

Symfony has low performance overheads when dealing with an environment that supports a PHP accelerator. It should be noted however, that in typical shared hosting environments where a PHP accelerator is not available, Symfony can use its own caching engine to speed code execution.

Symfony is aimed at building robust applications in an enterprise context, and aims to give developers full control over the configuration: from the directory structure to the foreign libraries, almost everything can be customized. To match enterprise development guidelines, Symfony is bundled with additional tools to help developers test, debug and document projects.