- Programming to an interface is a useful principle to design a dependency that can change in time or different dependency implementations can be selected by a runtime value.
- However, if you're sure that a certain part of your code won't change, then programming to an implementation is a good and cheap choice!