When to inherit? (not Cecil-specific)
Inheritance tends to work well when
- subclass supports a superset of operations of superclass
- Eseentially, this is contravariance
- subclass reuses much of the implementation of the superclass
- subclass’ representation extends representation of superclass
- subclass is a special kind of superclass
- conceptually, subclass is-a superclass