solid-dependency-inversion

Depend on abstractions (interfaces, abstract classes), not concrete implementations Use when designing system architecture. Architecture category skill.