What to consider when choosing a PHP Framework (For Newbies)


There are numerous PHP frameworks out there. Thats one reason i switched to PHP after doing Java for 3 years. PHP has more fun frameworks available that are easy to learn and implement.

When it comes to PHP frameworks there’s Zend, Symphony, CakePHP, Code Igniter and of course Yii framework.

You can also go with the mainstream and learn zend, but for me its too much for smaller quick projects. All these different frameworks has many plus points and their equal share of weak points. some are good for enterprise projects and some are good for small scale web based systems.

Here i have listed some points that i think are important when selecting a framework,

  • Ease of learning. How easy its to learn the basics? what is the underlying technology?
  • Project Scale – is it a project that should be implemented very quickly? a project that would have hundreds of users or one or two?
  • How easy it is to quickly define our logical design in the framework? how to match our database schema with framework elements? does the framework use MVC?
  • The learning materials available. There are some good frameworks but it doesnt have any E-books or any tutorials explaining how we can use the framework. for me this is a huge point, when i was trying to learn CakePHP I found that examples that details common day to day use of codings and methods are scarce compared to Yii framework. And if there is an easy follow documentation and tutorials plus an ebook then your life would be very easier when learning that framework.
  • because ultimately your aim is not learning a framework but using it to develop a useful system that matches the requirements.
  • How easy it is to host your finished product? does the framework require you to have some crazy obscure PHP options enabled on the server? It might be ok if your going to host the web site on your own but if your thinking about hosting it somewhere else this is a huge concern.
  • Tools available for automatic code and architecture generation. some tools are there that are hard to learn and needs lots of resources to run. so better clear this up in the beginning.
  • Additional functionality available? Yii’s collection of extentions has made my life a lot easier, so when your selecting a framework its good to check up on its extensibility using already pre-coded extensions. after all you don’t want to reinvent the wheel right?
these are some of the concerns i had when choosing a good PHP framework. let me know yours. for me the ultimate framework for small projects is Yii. And im trying to learn zend, will see how that works out. 🙂
Advertisements

Let me know what you think .. :)

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s