”Last week I was listening to a podcast on Hanselminutes, with Robert Martin talking about the SOLID principles. (That's a real easy-to-Google term!) It's object-oriented design, and they're calling it agile design, which it really, really isn't. It's principles for how to design your classes, and how they should work. And, when I was listening to them, they all sounded to me like extremely bureaucratic programming that came from the mind of somebody that has not written a lot of code, frankly.”
When I listened to this I thought, wow, he didn’t he just said that! Ok that the consulting job isn’t the most friendly environment for learning and writing good and well tested code, and that you sometimes just have to get the code out. But it don’t mean that you cant follow some simple rules that are going to make your life easier.
Jeff Atwood, the co-host of the Stack Overflow podcast wrote his thoughts on this in the The Ferengi Programmer and then later in Real Ultimate Programming Power. Both interesting post. But comparing the 285 Rules of Acquisition with the SOLID principles is just nonsense.
Uncle Bob posted an open letter to both Jeff and Joel before talking to them in their podcast #40 where they resolved their issues.
Then yesterday on my home I listened to Scott Hanselman’s podcast where Uncle Bob got some air time to speak his mind. At the end of the show he pointed to one of the sites where this issue has been discussed. There was one post where the author has made some motivational pictures for the SOLID principles, these are just great! Hope hi makes hi-res versions of these. Here are some:
Single Responsibility Principle