subject: Rapid Web Development with CakePHP [print this page] CakePHP is a comparatively new technology in the field of web development. It was invented at a time when ruby on rails was gaining popularity. Many must be unaware of it but the fact is Cakephp's very existence can be credited to ruby on rails, from which it was inspired. It is hence often labeled as rails clone. CakePHP is based on an MVC-like architecture that is both powerful and easy to grasp for developers. Controllers, models and views guarantee a strict but natural separation of business logic from data and presentation layers. Controller contains the logic of the application. Controllers retrieve and modify data by accessing database tables through models. Models are representations of database tables, they connect to the database, query it (if instructed by the controller) and save data to the database.Views can be described as template files that present their content to the user.
This MVC architecture greatly improves the maintainability and sustainability of the organization and the websites code. It separates the business logic from presentation and data retrieval. Here a website is divided into logical sections, each of which is governed by a particular controller. Any programmer who is accustomed to CakePHP's structure will be able to detect and rectify errors, while testing and debugging an application and that too without being aware of all of the details of the code.
Like Ruby on Rails, CakePHP development framework follows the two key features, DRY or "Don't Repeat Yourself" and CoC or "Convention over Configuration". The framework also offers a useful Rails-inspired feature called scaffolding, which basically allows the creation of an interface that's able to perform Create, Read, Update and Delete (CRUD) database operations with only a few lines of code.
Some of the CakePHP's built in features are as following:
Compatible with PHP4 and PHP5
Integrated CRUD for database and simplified querying
Request dispatcher with custom URLs
Templating (PHP syntax with helper methods)
View helpers for AJAX, JavaScript, HTML forms
Website directory independent
Access control lists (ACL)
Application scaffolding
Data sensitization
Security, session, and request handling components
View caching
Unit testing using the Simple Test framework
Built-in validation
With the help of all these host of features, CakePHP reduces development costs of the projects and helps developers write less code. For more information, please visit: http://www.andolasoft.com