Mar 20, 2021
I don't agree, really.
I'd say -- for an interface to be a genuine abstraction, it has to allow for any number of different implementations. If there is only one, that's fine, but that abstraction has to be *able* to handle any number of implementations.