tags:

views:

487

answers:

1

What makes cakephp to stand ahead of other frameworks. Is this really topping the chart in terms of PHP programming?

+2  A: 

I'd say that the single biggest advantage of Cake over Zend, Symfony, CodeIgnitor, etc., is that it is a rapid development framework. It's got a lot of stuff to help you get a site up and running quickly. If you're doing a minimum viable product, proof-of-concept, or demo piece of web sw, Cake is great!

However, it also has many disadvantages (as others have noted). It's very rigid. Some stuff doesn't work how you'd expect it to. The API changes quite a bit (although after 2.0 I'd expect that to stabilize). And the biggest strike is that it's regularly the slowest of the major frameworks.

Travis Leleu
Is it really slower than Zend? I haven't used either of them, but Zend seems to be a beast from all that I've read and heard.
keithjgrant
Yes, it's much slower. Zend loads things very lazily; so while it has a ton of modules, etc., it has a faster bootstrap routine. Cake loads up a lot of stuff in a very robust manner (not that Zend doesn't, but still...) Paul Jones' bookmarks are the ones most frequently cited - http://paul-m-jones.com/?p=315
Travis Leleu
Interesting, though it does look to be temporary: that post is a year old, and Cake 1.1 was faster than Zend 1.0, 1.5, and 1.6. The dip in performance from Cake 1.1 to 1.2.0 was identified as a known issue, and was being addressed. I'd be curious to see how 1.2.5 does.
keithjgrant
I upgraded my production app from 1.2.0 to 1.2.5 when the latter came out, specifically for the speed increase. When I did some load tests, I found that where I could once handle 2-3 simulataneous clients, I could now handle 4. So I got anywhere from a 25 - 50% speed boost, for free, just by updating the cake libs. But I'm sure Zend has gotten faster, too. When you're talking a factor of 2 in speed as the max difference, I wouldn't worry about it, you can scale out web servers, add caching, static servers, all kinds of speed-ups. Pick what framework speeds up your dev time the most!
Travis Leleu