-- José de Menezes Soares Neto <[EMAIL PROTECTED]> wrote
(on Thursday, 21 February 2008, 05:33 PM -0200):
> Why use ZendFramework and not CakePHP?
Why would you start a flame war on a ZF list? ;-)
I recently answered this, however inaccurately, with the following:
CakePHP and Zend Framework compete in the same arena. Some
differentiating factors of Zend Framework include:
* Use-at-will architecture. You *can* use the MVC of ZF, but you don't
have to. In fact, if you want to, you can utilize ZF *within* your
CakePHP application (and several people have blogged on how they do
exactly this). CakePHP is a full-stack framework by design, and you
cannot do similarly with its components.
* CakePHP uses convention over configuration; it is opinionated
software. As a result, it is a poor mesh for integrating with
existing applications, as it asserts its conventions even as far as
such areas as database schemas (I've heard anecdotes of people
needing to alter existing database schemas in order for them to work
with Cake, instead of being able to configure Cake to work with
their existing schema). Zend Framework is highly configurable, and
is designed to adapt to your needs and existing infrastructure.
* CakePHP was originally written for PHP4 and still supports PHP4. As
a result, it does not take advantage of many features of PHP 5,
including much of the power of PHP 5's object model.
That said, you can get up and running with CakePHP very quickly. Their
CLI tooling, plus the opinionated conventions, mean that when developing
a green field application, you can get started very, very quickly. The
Zend_Build/Zend_Console stuff we're working on currently will help close
this gap (in a configurable way), but this is definitely one place where
they have an advantage.
What it really comes down to, though, are what tools suit your needs?
This is subjective criteria, and will be influenced by what legacy
applications or data sources you may need to interface with, what
systems and PHP version requirements you have, etc. Only *you* can truly
evaluate which framework best suits you.
--
Matthew Weier O'Phinney
PHP Developer | [EMAIL PROTECTED]
Zend - The PHP Company | http://www.zend.com/