Re: What is the difference and relation between an interface and
its method?
Lew wrote:
The part that was controversial was "a designer who insists on using
interfaces for all interactions, that's a good thing", not a designer
who "creat[es] interfaces and cod[es] (and test[s]) to those interfaces
rather than concrete objects". Of course I agree that the latter is a
good thing, and I don't think it is controversial. Nor do I think
serious thinkers would propose that "coding to interfaces [is]
unnecessary."
Isn't that called a straw-man argument, where one restates someone's
position into a refutable one that was not the original point?
OK, just loose terminology on my part. I assumed that tenxian was just
encountering his first design methodology, and was exaggerating a bit.
Any good designer would insist on correct methods and not allow a layman
to over rule him or her.
This may seem unreasonable to the layman but I have to go with someone
who has experience, without knowing any other details.
I wasn't trying to start an argument, and it's certainly possible that
tenxian has a designer who is being unreasonable, but without more
details I don't see how we can say.
What is controversial is the carrying of that to extremes: one who
*insists* that *all* interactions go through interfaces, and the notion
that that insistence is "a good thing". In this very newsgroup, you may
have noticed that very controversy raging. So yes, it is
controversial. The evidence is the people vehemently disagreeing in
public on that very point.
It has come up in the thread "Composition vs. inheritance". There's
some talk there about whether concrete inheritance is evil.
Nope, I haven't been reading that thread. So I'm not up on the nuances
of design as it relates to emotions in this newsgroup. :) "Moderation
in all things" applies to software design too. That's what I assume
until there's evidence someone means something else.
Maybe I should read up on that thread if it's gone beyond a simple
discussion of composition.