I have object called Foo. Right now it implements IFoo which has a lot of properties on it.
I have one class that only depends on a few of those properties so i create IMeasurableFoo (which just has a few properties)
to avoid duplicate code, i now have IFoo : IMeasurableFoo as i moved the properties into IMeasurableFoo
but this feels wrong from an inheritance point of view as you have a more generic interface inheriting from a specific interface
any thoughts on the best way to organize these abstractions
For example, if these were concretions:
Bird would not inherit from FlyingBird (it would be the other way around)