|
From: Michael S. <mi...@sc...> - 2005-02-22 22:11:27
|
On Tuesday 22 February 2005 17:11, Martin Kersten wrote: > Also I would love to see Spring being applied to > the 'Interface belongs to the client' design principle. :-) A faithful of the church of (Uncle) Bob, or so it seems ;-) If I understand you correctly, you bemoan that currently abstractions, i.e. interfaces, and their implementations often live in the same package. This presumably results in these packages being off the mainline, meaning they are neither abstract and stable, nor concrete and instable. Your suggested solution is to move the abstractions to the packages where they are actually used. Thereby rendering their originating packages more concrete. Now, what would the outcome be? As most of the abstractions are used from multiple client packages, they can't be moved to any single one of them. Instead, new "abstract" packages would have to be created for them. Yes, this change would probably improve the scores on some design metric. Still, I'm somewhat sceptical if improvements of, say, learnability or maintainability would ensue. Also, as a matter of fact, Spring packages are not released individually, thus it is not very important to keep their interdependencies low. -- Your turn. Michael -- Michael Schuerig The more it stays the same, mailto:mi...@sc... The less it changes! http://www.schuerig.de/michael/ --Spinal Tap, The Majesty of Rock |