DEV Community

Cover image for Inyección de Dependencia | Explicación Completa (Definición, uso, estructura y ejemplo)
Daniela "Ingeniela" Barazarte
Daniela "Ingeniela" Barazarte

Posted on • Updated on

Inyección de Dependencia | Explicación Completa (Definición, uso, estructura y ejemplo)

Inyección de Dependencia | Explicación Completa (Definición, uso, estructura y ejemplo)

Introducción

Hola buenas, mi nombre es Daniela Barazarte y te quiero dar la bienvenida a esta explicación completa sobre la inyección de dependencias. Esta explicación será intuitiva y simple así como todas las explicaciones que forman parte de #DetectaLaLogica.

Si prefieres los videos, aquí tienes un tutorial completo hecho por mí en YouTube, está en español pero también tiene subtítulos: https://www.youtube.com/watch?v=Sz4acLjFvrU

Teoría

Definición de cada palabra

"Patrón de diseño"

  • Patrón: es un tipo de sucesos u objetos repetitivos Patrón de diseño
  • Diseño: actividad creativa que tiene por fin proyectar objetos que sean útiles y estéticos

"Inyección de dependencias"

  • Inyección: se refiere al acto de introducir algo en un elemento

Inyectadora

  • Dependencia: se refiere a una relación en la que una cosa necesita de otra para funcionar correctamente

Relación

Definición completa

La inyección de dependencia es un patrón de diseño de software que consiste en suministrarle a un objeto todas las dependencias que necesita para funcionar, en lugar de que este objeto las cree por sí mismo.

#DetectaLaLógica

Inyección de dependencia se llama así porque estás inyectando componentes de un objeto a otro y esa relación es una dependencia porque sin esa inyección, el objeto no podría funcionar correctamente.

Práctica

Ejercicio

Debes hacer un proyecto de consola que genere un ticket para entrar a un juego de fútbol.

Puedes hacerlo de muchas maneras, pero probaremos el método de hacerlo con la Inyección de Dependencias.

Método: sin inyección de dependencia

Sin inyección

Los métodos, vistas, clases, código y otros componentes de los tickets estarían desordenados en el código y se juntaría con el código del estadio de futbol.

Método: inyección de dependencia

Con inyección

Los métodos, vistas, clases, código y otros componentes de los tickets están totalmente ordenados y separados del código del estadio de futbol. Ticket le pasa sus componentes al estadio mediante la inyección de dependencia (esa dependencia está pintada en color dorado).

Importancia

El patrón de diseño inyección de dependencia tiene varios beneficios:

  • Mayor reutilización de código: si yo quisiera reutilizar el componente de ticket y colocarlo en otro proyecto, por ejemplo, un concierto lo podría hacer
  • Mayor flexibilidad: permite que los componentes puedan ser cambiados fácilmente sin afectar al resto de la aplicación.
  • Divide el código en partes más pequeñas y claras: lo que hace que el código sea más fácil de entender y mantener.

Despedida

(Recuerda) #DetectaLaLógica: Inyección de dependencia se llama así porque estás inyectando componentes de un objeto a otro y esa relación es una dependencia porque sin esa inyección, el objeto no podría funcionar correctamente.

Puedes practicar este tema en mi repositorio de GitHub (Código en lenguaje C#): https://github.com/danielabarazarte/DetectaLaLogica/tree/main/Conceptos

Muchas gracias por leer, si tienes alguna duda puedes comentarla y también puedes seguirme para ver mas posts de este estilo, gracias <3.

Top comments (0)