Why is it useful to work with frameworksPublished byGoogle Emmanuelle Delescolle on Feb. 17, 2014, 9 a.m.
Working with a framework is not always the right way to go but usually when creating a new website or application you will have to develop some "standard" features like a search-engine-friendly url system, an authentication system, a way of checking permissions of authenticated users, listing, deleting and editing of database records and probably a lot of other features. Provided you pick a correct framework, all those things are included out-of-the-box.
They are not only included, they are also tested and fixes are published whenever someone in the community finds a bug. Some bugs are sneaky and tricky to find, having a full community of people reporting them is a good thing, at least it's better to find out about a bug by the community and fix it in time rather than finding out about it because one of your customer lost money.
I say frameworks are tested and since they are tested they also come with a test sub-framework, one you can extend to build your own tests for the "home-made" parts of you site. As I said many times before, testing is important and it's better (and cheaper) to spend time writing test rather than having a client complain and only then trying to find where that bug comes from.
Working with a framework is also often faster. It's not always the case but more often than not, aside from the "basic" features provided by the framework, features you need to add are something someone else out there using the same framework has already done and with a bit of luck they documented their efforts or even wrote an addon doing exactly what you need.
Working with a framework also provides flexibility for your clients. If you, and I hope you don't, ever go out of business or simply retire, some other team can easily take over a documented project written on top of a main-stream framework. A task that often proves difficult when a project has been enterily "homemade".
In summary frameworks provide you a tested, easily extendable base for your high-value-added tasks while not re-inventing the wheel with each and every project. If not doing it by using main-stream frameworks, you probably already do it anyway, having your own set of "tool-libraries" you developped yourself. Well, if you trust those libraries to be time-saving, ask yourself why not trust a framework approved by an entire community.
Have a great week everyone!My 2 cents IT