On 13. 2. 2019 14:54, Cyril Ferlicot wrote:
On Wed, Feb 13, 2019 at 2:40 PM Hilaire <hila...@drgeo.eu> wrote:

I am wondering. Does it not make responsabilities less clear, shareed in
class hierarchy and traits hierarchy, now both in term of behavior but
also state?


Hi,

In general I do not choose between inheritance and composition based
on what the language allows. When we had stateless traits, I created
subclasses even if I was not using any state, because it made sense.

I'm not a big fan of limiting the language on composition because the
choice between composition and inheritance should be conceptual and
not technical.

Sorry for the unconstructive and spammy "I like it" post, but:

+1!

I read in an article this way to choose between inheritance and composition:

«Inheritance should only be used when:
- Both classes are in the same logical domain
- The subclass is a proper subtype of the superclass
- The superclass’s implementation is necessary or appropriate for the subclass
- The enhancements made by the subclass are primarily additive.»

Hilaire

--
Dr. Geo
http://drgeo.eu

Reply via email to