Has this "philosophy" or approach in .NET development caught the attention of many yet?
POCO of course is the .NET version of POJO (Plain Old Java Objects), which is the approach of designing Java business objects that do not depend on some container or environment like the monstrous EJB.
I've been practicing this approach lately...no ADO.NET in business objects, no external dependencies, no ConfigurationManager or ConfigurationSettings.AppSettings stuff. Every dependency should be injected via the constructor (or the appropriate method call) and there is heavy reliance on interfaces. This way I can choose to inject any implementation of those interfaces, with various implementations doing either database access or mock functionality. (A while back I was starting to become a fan of the CSLA.NET framework, but lately I'm getting the impression that using it results in non-unit testable code. So now my preference has changed.)
And I like it. My output is lightweight, testable and predictable. My ASP.NET code behind (since I do web apps practically all the time) feels like I'm just wiring objects up.
What's your take on this concept?