Monday, August 28, 2006

Your First Bit of Cake (CakePHP, that is)


In the unceasing quest to bring order to PHP's inherently unstructured landscape, various frameworks have cropped up. One of the latest attempts tries to emulate Ruby on Rails, which has received a great deal of attention for its structure and rapid web development characteristics. The latest such environment for PHP is called CakePHP and SitePoint has a good, quick introduction:

...In recent years, PHP has re-invented itself, allowing Object Oriented Programming (OOP) to enter the scene with a plethora of new rules and functionality, all of which are ingrained in more mainstream programming languages like C++ and Java. Gradually, more and more PHP developers have embraced this new philosophy and started developing frameworks, drawing their inspiration from other more-established languages in the pursuit of creating a structure for an inherently unstructured language.

Many frameworks are available on the Internet, each with its own specific set of rules and conventions, achievements and failures. Some degenerate into unusable and intricate collections of pre-built libraries and tools that enslave developers into complex and truly unusable programming methodologies; others do not.

Ruby on Rails has definitely played a key role in inspiring the quest for the perfect web framework in programming languages other than Ruby. Thanks to the Rails phenomenon, more frameworks have appeared on the scene, offering functionality that's very similar to Ruby on Rails. These frameworks are often labeled Rails Clones.

Some of the frameworks' developers have openly admitted that they tried to port Rails to other languages, but often they overlook the fact that Ruby on Rails was built in Ruby for a reason: Ruby has features that no other programming language offers. At the same time, at least one person gave up on the idea of totally cloning Rails in PHP, but instead, decided to borrow its structure and basic concepts to make PHP more organized...

SitePoint: Your First Bit of Cake (CakePHP, that is)

No comments: