Concrete Types or Interfaces for return types?
Posted
by SDReyes
on Stack Overflow
See other posts from Stack Overflow
or by SDReyes
Published on 2010-04-21T00:02:32Z
Indexed on
2010/04/21
0:33 UTC
Read the original article
Hit count: 482
Today I came to a fundamental paradox of the object programming style, concrete types or interfaces.
Whats the better election for a method's return type: a concrete type or an interface?
In most cases, I tend to use concrete types as the return type for methods. because I believe that an concrete type is more flexible for further use and exposes more functionality.
The dark side of this: Coupling. The angelic one: A concrete type contains per-se the interface you would going to return initially, and extra functionality.
What's your thumb's rule?
Is there any programming principle for this?
BONUS: This is an example of what I mean http://stackoverflow.com/questions/491375/readonlycollection-or-ienumerable-for-exposing-member-collections
© Stack Overflow or respective owner