Okay, not my title, so don’t yell at me. I simply came across this article last week, featured it in the very first This Week in .NET and found myself contemplating it enough where I felt discussion could be had on the topic.
So the article Library patterns: Why frameworks are evil written by Tomas Petricek’s digs into Libraries vs. Frameworks. How a Framework primarily tells you how to code, and a library gives you free will (so to speak). That is a very loose translation of his article, but I discovered as I reflected on it that there may be some truth behind those words.
I don’t agree that Frameworks are evil, they serve a purpose and they serve that purpose well. Internally we’ve written more libraries than utilizing frameworks. Why? Because we have a large enough team of developers where Team 1 could be working on Library X, Team 2 is on Library Y, and Teams 3 and 4 are working on integrating those two libraries into our flagship product. Libraries give us the ability to have teams working on multiple aspects simultaneously, have them on different iterations, and be able to QA them individually.
Using a Framework would likely lead us to stepping on each others toes as we find scenarios where the framework must be customized, or we might have to write an out of band component that doesn’t really fit into the framework, but is necessary for us to make our product feature a reality.
So what does everyone else think of the article? What points did you agree with or disagree with? Do you feel that libraries are typically better than frameworks? Or do you prefer frameworks over libraries? What does the company you work for (or ones you’ve worked with in the past) utilize the most?