In “I don’t want my users knowing that I’m handing them an interface.”, why is the severity “I don’t want” instead of “Users doesn’t need to know”?

  softwareengineering

According to Should interface names begin with an “I” prefix?, I know I should not add prefix “i” to interface because of some reasons.

However, I’m not raising new reasons to support or oppose the prefix “i” on interface. Instead what I don’t understand is, why would the post use the tone “I don’t want” in “I don’t want my users knowing that I’m handing them an interface.”? I think the answers like “interface is no much different from an abstract class” is a bit contradict with “I don’t want my users knowing that I’m handing them an interface.” : if interfaces really no much difference with classes, why would I don’t care users knowing some type is a class, but care some other type is interface?

Letting users know I’m handling interfaces may be redundant for users, but seems also no harms for users. Why would the severity be “I don’t want my users knowing that I’m handing them an interface.” instead of “Users don’t need to know that I’m handing them an interface.”? What bad actions may take when users know I’m handling interfaces instead of concrete class? Or what are the bad impacts when a user knows a type is a interface instead of a concrete class?

LEAVE A COMMENT