Dependencia inversión es asegurar los módulos de nivel superior no dependa de módulos de nivel inferior. Por lo tanto, la lógica de la aplicación no depende de su modelo comercial o lógica de negocios. Hay una clara separación de preocupaciones.
El principio establece que su aplicación define y posee una interfaz que su nivel empresarial debe implementar. Esto forma en que su nivel de negocio depende de la interfaz definida de su aplicación. Por lo tanto, las dependencias están invertidas.
Expandiendo esto, si ahora tiene tres aplicaciones, cada una con sus propias interfaces implementadas por el nivel empresarial, su nivel empresarial puede cambiar, y siempre que implementen las interfaces como deben, entonces sus aplicaciones no son más prudentes.
Un buen ejemplo de Java de este principio y cómo un proyecto de este tipo estaría estructurado se puede encontrar aquí, en mi sitio web: http://www.jeenisoftware.com/maven-dip-principle-example/
Dependencia inversión no es tanto sobre el diseño de interfaz, aunque eso es lo que está sucediendo , se trata más bien de implementar un servicio. En otras palabras, un tipo de patrón de diseño orientado al servicio.
¿Quiere decir Inyección de dependencia (también conocida como Inversión de control)? – tehvan
No encuentro ninguna información en Google sobre el "Principio de Diseño a Interfaces". ¿Puede explicarme qué quiere decir con eso? – Trumpi
Probablemente signifique "diseño por contrato" – troelskn