Coder, Entrepreneur, Blogger, and Coffee Addict
Frameworks seem to be popping up all over the place for all sorts of languages. These frameworks all have one goal. They are looking to reduce development time. Time is money and when you are working on client’s sites frameworks can drastically reduce the development time. For this reason frameworks are not going away any time soon.
If you haven’t tried a framework for web development do yourself a favor and just go try one. Adding skills to your skill set will help you in future projects. You may find yourself forced to work on a framework in the future so why not get a head start and learn one.
They say a good programmer is a lazy one. Why reinvent code? Why come up with custom code that other programmers will have to decipher when it comes maintenance time. Why not have code that is already well documented and widely known. Why not allow someone else to research the industry standard way of doing the mundane tasks while you focus on the real programming?
Ruby on Rails is a very popular framework for the ruby language. I decided against using this as I wanted to leverage my experience in PHP with a PHP framework. It only made sense to do this. The other reason I did not go with Ruby is that it is not as well supported by webhosts. For me it just doesn’t make sense to learn Ruby right now.
Actually CakePHP was the first framework I tried and I really thought I was going to use this one. As newbie to the MVC model of programming I simply couldn’t follow the documentation. After searching around I found Zend Framework. I started going through the tutorials and watching a few screencasts. Something finally clicked and I was able to start the learning process and do some trial and error.
It wasn’t until I had already invested some time into the framework and spoke with a friend learning both Ruby on Rails and Cake PHP that I learned why I prefer this framework. The Zend Framework is actually not really much of a framework at all. Out of all the PHP frameworks Zend is probably the lest automated. It is more accurately described as a library of common PHP functions.
Unlike cakePHP Zend doesn’t setup database connections or really do much automatic code generation. It sets up the MVC model and that is about it. This provides a little more flexibility with your code. This advantage however is also Zend’s disadvantage. It means that you will spend more time building your prototype.
The first thing that drew me into the Zend Framework was the fact that is was made the people that create and maintain PHP. This means this framework is here for the long haul and isn’t going anywhere soon. It also has some major players on board, IGN.com, RottenTomatoes.com, AskMen.com and IBM all use the Zend Framework.
Traditional PHP developers will fit right in with Zend as it is just a library of great functions. CakePHP is suited for people that are basically looking for a Ruby on Rails clone for PHP. I think all the framework’s really do the same thing and learning whichever one fits your specific need is the one you should choose. I chose Zend Framework because it fits my style. There might be a better framework to try, just do a quick search and see where it takes you.
Mark, thanks for pointing out the Zend inaccuracy. I’m writing an article that should clear things up a little. Give me a shout if you ever want to geek out over Zend, Cake and frameworks in general.
Hey Mark,
Interesting article. I was looking around for a gaming CMS that can mimic what IGN does (product centric approach like ign. ign has “objects” which can be games, movies, whatever. Each object has a list of different kinds of content available, like reviews, previews, media – images and video.like say you click on a game artbox and it takes you to the game page with all their reviews, videos, etc.)
I came across ccms, and a wordpress theme that tries to do a bit of this, but not all. Since I’m completely new to websites and such and I’m about to adventure in creating one the beginning of next month, I was wondering if Zend could help me with this? I really want to have a game database that all can have their page with their content.. and have that along with wordpress since it is a bit easy to use wp.
If you could help me I’d appreciate it lots!
Thanks and great post.
Rod, zend is a FRAMEWORK meaning it helps you program your own. Not what you are looking for I don’t think.
© 2011 All rights reserved
Mark, as a clarification, AskMen.com uses CakePHP, I would know. As for IGN, they use their own old-school CMS, Network in a Box.
I built the AskMen CMS with Cake because it was easy to learn and easy to work with. At the time, Zend was incomplete and Cake was at 0.6b.
How’s your experience with Zend?