I agree with princec here. Java developers should learn at least one thing from .NET developers: to think “You’re not gonna need it!” when you are thinking “what if, what if, what if”. It saves a lot of design and development time and head aches. With today’s tools it is so much easier to refactor a piece of code should you need to expand something you have hardcoded into something more abstract.
Indeed. I try to remind myself of this often, but it doesn’t always work… finally working with other people on real projects is proving good therapy from this point of view.
It’s one of those programmer’s blocks where you try to find the perfect solution…
As long as you are not using it very frequently there really is little problem. I don’t see what all the fuss is about.