"Depender de abstracciones. No depender de concreciones."
Hay diferentes formas de definir el DIP:
- Las abstracciones no deben depender de los detalles.
- El código debe depender de cosas que estén en su mismo nivel de abstracción o superior
- Las reglas de alto nivel no deben depender de los detalles de bajo nivel
- etc.
Todas ellas se basan en la idea de crear dependencias hacia niveles de abstracción superior.