Occasionally, choosing the right framework for your software is a task requiring research, time and effort.
In that spirit, we here at vteams have developed a few simple pointers.
As you likely know, though each framework is MVC-based the most popular frameworks consist of CodeIgniter, Yii and Zend.
That being said, when making a MVC selection, you need to observe the full parameters, internal and external. It can be daunting to peruse the myriad philosophical debates on the matter, easily discoverable on the internet’s frameworks websites and their community blogs. As each framework stands to gain much from its own use, each will make the case that it can best fulfill your needs. Unfortunately, making the right decision is a slightly more arduous task.
Simplicity and speed versus functionality and complexity; what’s your pick?
The blatant fact is that you don’t need to be a full stack programmer to make the right choice; extensive research will do the trick. Be sure to consult your staff, or team, on their recommendations, needs and desires. If your programmer is (or you are) not very experienced, try to consider the more complex options as null and void. In this case, your best bet would be either CodeIgniter, CakePHP or a less functional/linear type of framework created by a small companies. These come a dime a dozen.
On the other hand, if you have a highly experienced programmer on your hands who can tweak and easily grasp complex MVC architecture, then you have the luxury of considering requirements, complexity and volume.
If your requirements include inordinately high functionality then Zend framework is the right choice for you. Considering its rich libraries, it does not provide you as much help as CodeIgniter, but probably 5 times the level of functionality as the aforementioned.
CodeIgniter provides a beautiful documentation along with extensive community support and the ultimate instructive structure, but Yii and Zend do not carry with them this level of assistance and support.
Here’s another viable alternative: when it comes to the need for rapid application development without back-end upkeep and management, Yii framework is the finest choice as it provides beautiful ‘Gii’ library, ORM and Grid operations. Though you won’t become an expert on all things Yii overnight, you will get the job done.
Also, keep in mind that it sometimes becomes more tricky when you need to customize ‘Gii’ developed functionalities as it is 200% more complex itself than its development.
It all boils down to priorities.
Most important is to pick a framework that you can manage; your software will serve a vital purpose, one which will ensure that your life is easier than it was before its existence, every day. Focus on that goal and try not to bite off more than you can chew.
Ultimately, the “geekiest” of programmers will not be satisfied with CodeIgniter. It’s more the best choice when it comes to ease of use and comprehension. Yii and Zend framework respectively provide rich libraries and are very suitable for larger-scale requirements. To the same token, development in Zend is generally less time-efficient, though easy to customize. Thirdly, development in Yii is rapid but difficult to customize when you may need that customization most.