Two weeks ago when I start searching for PHP framework that I can use for my web project development, I landed to a three different framework witch CakePHP, CodeIgniter and DooPHP both of them promise different features, quick development where you’re going to be excited.
In the long run of review and testing of these three PHP framework, I started to ask some question like “Do I really need a framework” I landed to a different blog and forum to answer my quest.
1.Do I really need a PHP framework?
2.Its PHP framework can handle out of the box programming needs and all business requirements?
All though it’s a long debate and programmer has different point of view I decide to list down the pros and cons of using PHP framework and its advantage and disadvantage.
Advantage of Using Framework
- You don’t even have to write OO code if you don’t want to.
- Provide a solid structure for your code.
- Extra functionality that would be much harder to replicate on its own.
- MVC Structured code (Model-View-Container ).
- Enforcing of good coding standards.
- Pretty URLS.
- Less time coding.
Disadvantage of Using Framework
- Hide the original syntax of PHP
- Slower then a simple php.
- It’s heavy, more compiling time
- Framework is like third party software
- Limited resources & support
- Framework is for weak Programmer
For small project use custom PHP toolkit is good, for big project I suggest to carefully review and decide if you going to use framework. Instead of reading its feature and promise go to forum and read all the issued raised so you can get an idea of what possible problem that you may encounter.
If your PHP project will handle out of the box programming needs and ideas, I suggest don’t use framework rather than use framework, design carefully your project needs and develop a clean and secure object oriented code.
Because framework are built in solution for your project needs it’s doesn’t mean It can handle all possible business and project requirements.
Remember that framework is also made from programming native language, I don’t want to say to create you own framework but of course you can design framework for you own project specific needs, it will help you become more strong in programming analysis and design.
Remember that you can also design your project with Pretty URL and implement standard coding in the team.
Relying on framework will only make you idle and dependent on framework, I remember the time when one of my teams mate approach me and said that his group can’t proceed to their task because there is no available library for their needs, they found one framework witch is limited in function and feature. My answer to him is very simple “Then crate your own library or framework”.
But overall it’s still depend on your needs and what generation programming language you are in.