Symfony - what and why???
November 15th 07, 16:57
Bluhalo has moved over to using the symfony web application framework. After historically developing and maintaining a variety of platforms including Perl, mod_perl, Mason, ColdFusion, ASP and PHP, the development team made a choice to use the symfony framework. This enables us to develop web-sites in a focused, coordinated way; the framework uses many of the best ideas set forward by Ruby on Rails, without the complexity of learning another language. The framework is based on PHP5, and uses the enhanced object oriented features that this brings. We encourage developing reusable components; this speeds up code development, and reduces bugs through the reuse of tested and trusted code.Two of the key features that aid the structuring, readability and maintainability of object-oriented code are MVC and ORM.
MVC
The Model View Controller architecture enables us to create well designed code that allows the programming and html teams to focus on their specialist areas.The model layer encapsulates the data layer, which may consist of databases (MySQL, Microsoft SQLServer or others), WSDL/SOAP data providers, XML/RSS/Atom feeds. This layer also contains the business logic for the web applicationThe controller layer connects the view layer to the business logic; generally this consists of handling requests from the visitor, retrieving or storing information using the business logic in the model layer, and preparing data for display by the presentation layer.The presentation, or view, layer provides the layout for the data in the website. Usually this consists of HTML/CSS, but equally this could be targeted for mobile phones in WML or similar.ORM
The object relational mapper allows us to write code without directly accessing the database; no knowledge of SQL is necessary. Of course, performance optimisations can still be carried out to ensure the site is highly responsive; but ease of development is improved through the global use of objects.Microsoft are adding both of these features to Silverlight 1.1 alpha; symfony already has it!Other Features
The list of features available within the framework is very comprehensive:* Ajax support* Routing (smart URLs)* Caching* Templating* i18n (internationalisation)* Unit testing* a bookCommunity
The strength of the framework lies in the large community of developers now writing applications in the language. The framework is constantly being improved, and features that do not fit directly within the framework are contributed as plugins that can be added to an application to enhance functionality. The list is too long to include here, but includes everything from payment gateway APIs, user management, CMS, search, RSS feeds, News, Blog, Forum, SEO, fancy javascript effects, and many more. Many of these will be featuring in the bluhalo website - coming soon!Rob S.
Send to a Friend
Print
Spread the Word...
Archive
- August 2010
- July 2010
- June 2010
- May 2010
- April 2010
- March 2010
- February 2010
- January 2010
- December 2009
- November 2009
- October 2009
- September 2009
- August 2009
- July 2009
- June 2009
- May 2009
- April 2009
- March 2009
- February 2009
- January 2009
- December 2008
- November 2008
- October 2008
- September 2008
- August 2008
- July 2008
- June 2008
- May 2008
- April 2008
- March 2008
- February 2008
- January 2008
- December 2007
- November 2007
- October 2007
- September 2007
Facebook
del.icio.us
Yahoo! My Web
Digg
Google Bookmarks
Reddit
Technorati
Newsvine
Stumbleupon





