¿Qué es la Inyección de Dependencias? - EJEMPLO PRÁCTICO

Поделиться
HTML-код
  • Опубликовано: 2 сен 2021
  • ¿Qué es la inyección de dependencias y por qué es tan importante? Si miras este video hasta el final aprenderás en menos de 15 minutos una de las técnica más utilizadas por programadores Seniors de todo el mundo.
    ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
    💥ME ENCUENTRAS TAMBIÉN AQUÍ 👇
    Sitio Web ►thecodercave.com/
    Twitter ► / cavecoder
    ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
    💻 CURSOS PREMIUM 👇
    🚀Curso Completo de C# desde Cero ► bit.ly/3jLyIv4
    🚀Curso de C# Práctico en 15 Proyectos ► bit.ly/3uUqCaR
    🚀Curso de C# en el Backend - API Mastery ► bit.ly/3lJLZdB
    🔥 Curso Completo de Blazor desde Cero ► bit.ly/38DtZXz
    🔥 Blazor Ultimate: Domina Blazor en 4 Proyectos ► bit.ly/3xbAtbA
    👉Curso Práctico de SQL para principiantes ►bit.ly/2R6KVOX
    📚 Curso de GIT y Github para Principiantes ► bit.ly/30Fbhz4
    Descuento del 60% en todos mis cursos 👉 thecodercave.com/descuento/
    ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
    📚 RECURSOS RECOMENDADOS 👇
    🔥GANA EN DÓLARES desde Latinoamérica y emigra a cualquier parte del mundo.
    Talently ► bit.ly/3miVyNQ
    ¿QUIERES APRENDER INGLÉS?👇
    Italki ► $10 de regalo con tu primera compra
    👉 go.italki.com/TheCoderCaveesp
    Busuu ► App gratis con descuento para su sección Premium
    👉www.dpbolvw.net/click-1003128...
    Dominios ► Namecheap: 👇
    👉 www.kqzyfj.com/8h117p-85-7NPO...
    Hosting ► Bluehost: 👇
    👉 www.bluehost.com/track/gabmor...
    Nota: Los links en la descripción son links de afiliado, lo que significa que recibiré una pequeña comisión si te registras usando esos links sin ningún costo extra para ti. Todos los links de afiliados son productos o servicios en los que creo y uso personalmente.
    Music from filmmusic.io
    "Blippy Trance" by Kevin MacLeod (incompetech.com)
    License: CC BY (creativecommons.org/licenses/b...)
  • НаукаНаука

Комментарии • 81

  • @eduinivanvillalbaruiz2782
    @eduinivanvillalbaruiz2782 2 месяца назад +1

    Muy bien, es lo que necesitaba

  • @javierhofer521
    @javierhofer521 2 года назад +7

    sos el que mejores ejemplos y explicaciones das para los que usamos .Net, muchas gracias!!

  • @edwinroman30
    @edwinroman30 2 года назад +12

    Una idea para el próximo video podría ser la explicación del patrón repositorio, explicas muy bien estos tópicos. Saludos 🙋🏻‍♂️

  • @javierherediaruiz6076
    @javierherediaruiz6076 2 года назад +4

    Excelente explicación. Podría afirmar que la mas clara, concreta y concisa que he visto a través de un ejemplo real de Inyección de dependencía. Te has ganado un nuevo suscriptor jejejej. Sigue así !!!!

  • @rodrigo-hs8tn
    @rodrigo-hs8tn 2 года назад +11

    Excelente video! Gracias por enseñar de forma tan practica, breve y efectiva. Saludos!

  • @tecnologiademexico.325
    @tecnologiademexico.325 Год назад +1

    Muy buen vídeo.

  • @daybit5746
    @daybit5746 2 года назад

    Excelente explicacion y ejemplos usados, muchas gracias.

  • @alejandronarmona3121
    @alejandronarmona3121 2 года назад

    Muy bien explicado! Felicitaciones!

  • @hernanlazarte271
    @hernanlazarte271 2 года назад +1

    Muy claro el ejemplo! Genial. Muchas gracias por la explicación! Saludos!

  • @morelias
    @morelias 2 года назад

    Excelente video, aprendí tal cual como lo describes!!!!

  • @miguel900030
    @miguel900030 2 года назад +1

    Una explicación muy clara 👍

  • @jhonphileppereyesflores6968
    @jhonphileppereyesflores6968 Год назад

    Muy buen video, buena explicación y muy agradecido por el aporte.

  • @agustinaguirre9673
    @agustinaguirre9673 2 года назад

    Excelente video, muchas gracias. Me quedo todo claro.

  • @luis96xd
    @luis96xd 2 года назад

    Excelente video, muy bien explicado, gracias!

  • @thedevdudeyt
    @thedevdudeyt Год назад

    wow qué fácil o qué bien se entiende con esta explicación tan clara muchas gracias The Code Cave.

  • @walterrodriguez2696
    @walterrodriguez2696 8 месяцев назад

    Muy bueno! gracias por la explicación

  • @GabrielGongoraNavarrete
    @GabrielGongoraNavarrete 7 месяцев назад

    Excelente, muy bien explicado

  • @cesarcubillos7098
    @cesarcubillos7098 8 месяцев назад

    Muy claro, por fin lo entendí, muchas gracias ;)

  • @col_yom
    @col_yom 10 месяцев назад +2

    Genial explicación, complementaria a los principios SOLID explicado por vos. Soy javaloper y pude pasar todo a Java

  • @LorenzoJimenez
    @LorenzoJimenez 5 месяцев назад

    Pasé todo el proyecto a JavaScript y funcionó a la primera después de las obvias modificaciones. Muchas gracias.

  • @ilianostapovich4378
    @ilianostapovich4378 Год назад

    Muy buen tuto, rapido y clarito

  • @daniel-24gra79
    @daniel-24gra79 2 месяца назад

    mil gracias que buena explicacion

  • @tonycarrbcnxxx
    @tonycarrbcnxxx 11 месяцев назад

    Brutal, eres grande, gracias por todo.

  • @yeshua5581
    @yeshua5581 9 месяцев назад

    Muy conciso el video, muchas gracias

  • @abelromeroruiz5702
    @abelromeroruiz5702 2 года назад

    muy buen video lo entendí a la perfección

  • @francoortega8881
    @francoortega8881 2 года назад +2

    Conciso y claro. Excelente!

  • @SergioTorres71
    @SergioTorres71 2 года назад

    Por fin entiendo la inyección de dependencias, muchas gracias!

  • @saulaxes
    @saulaxes 11 месяцев назад

    excelente explicación, felicidades!!

  • @anthonyalvavasquez9736
    @anthonyalvavasquez9736 2 года назад

    👏🏽👏🏽👏🏽 Excelente explicación

  • @matiasvillamarin1719
    @matiasvillamarin1719 2 года назад +1

    Muy bien explicado. Gracias!!!

  • @Alan-pz9gf
    @Alan-pz9gf 6 месяцев назад

    Excelente explicación, wow

  • @carlosalberti
    @carlosalberti Год назад

    excelente video

  • @lalokura1000
    @lalokura1000 2 года назад +1

    Gracias Maestro, esperamos Singleton siguiendo este ejemplo

  • @JuanRios-le8tf
    @JuanRios-le8tf 2 года назад +1

    Muy bueno!

  • @ReaverZ3r0
    @ReaverZ3r0 Год назад

    Muchas gracias por la explicación, cosa que aplicaba pero no sabia su nombre...

  • @ale_gallardo
    @ale_gallardo 2 года назад

    Gracias bro!

  • @leonardoramirez8226
    @leonardoramirez8226 9 месяцев назад

    Excelente.!!

  • @SrTemas
    @SrTemas 20 дней назад

    muy buen video!

  • @agustinlevental7488
    @agustinlevental7488 Год назад

    excelente video!

  • @emanuel2097
    @emanuel2097 2 года назад

    Excelente!!

  • @adrianspinetta
    @adrianspinetta 2 года назад +1

    Excelente.

  • @samuelsaravia7621
    @samuelsaravia7621 9 месяцев назад

    Buenísimo !!!!

  • @dhardysd
    @dhardysd 10 месяцев назад

    Genio 🎉 🙌

  • @brianross1972
    @brianross1972 6 месяцев назад

    sos un fenomeno

  • @eduarsanchez1851
    @eduarsanchez1851 Год назад

    Excelente contenido

  • @ginogrecor
    @ginogrecor 2 года назад +1

    Gracias excelente video

  • @ferduzi007
    @ferduzi007 Год назад

    Bien explicado, me pareció muy rápido en algunos puntos pero el punto fue conciso.

  • @hernandezgomx466
    @hernandezgomx466 2 года назад

    eres grande!

  • @risingforce9648
    @risingforce9648 Год назад

    copado!

  • @eliasvazquez9599
    @eliasvazquez9599 Год назад +2

    Muy buena explicación. En pocos minutos y de forma clara, resolviste una duda que tenía desde hace tiempo. Hay mucha calidad en tus videos. Gracias!

  • @einsteinvalenzuela6757
    @einsteinvalenzuela6757 2 года назад

    Excelente! (Y)

  • @alexislunas
    @alexislunas Год назад

    la verdad me perdi en la mitad del video :C. pero muy buenos videos siempre me ayudas!

  • @eduardocarrot6040
    @eduardocarrot6040 2 года назад

    wooow! 🤯

  • @alexorihuela1297
    @alexorihuela1297 Год назад +1

    Muy buen video, podrías compartir el código original y final para prácticar por favor?

  • @rodyfernandez
    @rodyfernandez Год назад

    💚

  • @FernandoZamudioC
    @FernandoZamudioC 2 года назад +2

    Las interfaces son en principio un contrato el cual obliga al momento de "heredar" que la clase cumpla el contrato o sea implemente cada uno de esos metodos creados, que haga lo q quiera pero q lo cumpla, esta es la base de la inyeccion de dependencia pero mi pregunta... la interface obliga a crear como MINIMO lo q ella posee lo cual permite crear otras cosas adicionales pregunto.... al crear otras cosas adicionales, esto NO impide la inyeccion ? digo si cumplo con el contrato basico pero le pongo otras cosas adicionales esto no romperia la capacidad de inyectar ? espero haberme explicado

    • @juliancavallo
      @juliancavallo 2 года назад

      Hola Fernando, no habría problema en ese caso, se puede hacer la inyección sin problemas ya que en definitiva estás cumpliendo con la interface

    • @josemanuelgomez901
      @josemanuelgomez901 Год назад

      No, pero estarías obligado a implementar los otros métodos de la interface aunque no los uses en una clase en concreto, el principio de segregación de interfaces soluciona este problema.

  • @edwinroman30
    @edwinroman30 2 года назад

    Buen contenido, una pregunta: ¿Por qué en la asignación que se realiza en los constructores no se le coloca "new" como nueva instancia?

    • @lordbacchusofwraiths
      @lordbacchusofwraiths 2 года назад +5

      Porque recibe el objeto por parámetros en el constructor, no tiene que crear un nuevo objeto.

  • @hexagerard
    @hexagerard Год назад

    Excelente video! Pero no será mejor incluir alguna lógica para poder elegir si se quiere hacer la conexión y/o usar un método diferente de envío de mensajes sin tener que cambiar las clases en el código?

    • @rodrigoseverianogarcia6059
      @rodrigoseverianogarcia6059 Год назад

      Obviamente pero lo que se quiere tratar en este video es la finalidad de la inyección de dependencias, que es desacoplar las clases. En este caso sigue "manteniendo" los dos proveedores pero lo normal seria que únicamente quede uno ya que seria el "remplazo"

  • @williamprogramer4168
    @williamprogramer4168 2 года назад

    ⭐⭐⭐⭐⭐

  • @guilhermenogueiradasilva166
    @guilhermenogueiradasilva166 Год назад

    Bro al final del vídeo dices que vas a dejar en la descripción el link del siguiente vídeo pero no lo encuentro por ninguna parte

  • @LorenzoJimenez
    @LorenzoJimenez 5 месяцев назад

    Para mí, lo más difícil de entender es que al CommunicationService y CustomerService se le manda un objecto cualquiera, y lo único es que debe garantizar es el interfaz, o sea, tener la función que se usará. Muchas gracias.

  • @FernandoZamudioC
    @FernandoZamudioC 2 года назад

    Una interface es un contrato que pide que se cumpla como mínimo lo q dice El contrato al momento de implementar en la clase pero puedes hacerlo más grande agregar otros métodos ahora bien al inyectar dependencias estos objetivos pueden tener métodos adicionales al del contrato y seguir funcionando al ser inyectada ?

    • @antonioclavero6747
      @antonioclavero6747 2 года назад

      Si, la clase puede tener métodos adicionales y van a seguir funcionando con normalidad, pero dicha clase si o si tiene que implementar lo que pide la interface.

    • @noaxhellio6871
      @noaxhellio6871 Год назад

      Sí, puedes inyectarlos sin ningún problema. El detalle es cuando quieras utilizar esas funcionalidades extras desde la instancia de la interfaz, para eso tienes que hacer un parse.

  • @luzclarke6333
    @luzclarke6333 3 месяца назад

    Capas

  • @luismaestro23
    @luismaestro23 Год назад +1

    Osea lo que hace la inyeccion de dependencias, es mandar toda la responsabilidad de instanciar objetos, a la clase principal xd? osea a la clase main en este ejemplo

  • @ntrpause
    @ntrpause 8 месяцев назад

    quiero volverme bueno en C#

  • @Ak4n0
    @Ak4n0 9 месяцев назад

    Básicamente es usar interfaces.

  • @marcosvitaliable
    @marcosvitaliable 2 года назад +2

    Teoria confuso, la inyeccion de dependencias no deriva de la inversion de independencias de echo son conceptos diferentes, asi que es que salen los prgramadores que a todo le meten interfaces, cuando invertir la dependencia no tiene ningun sentido. Por ejemplo en DDD un aplication service que colabora con un domain service no invierte nunca la dependencia por que no tiene sentido de echo esta mal, en ese caso solo se inyecta.

  • @laesponjaloca123
    @laesponjaloca123 2 года назад

    Clarísima explicación *clap clap clap

  • @EmprendeTI
    @EmprendeTI Год назад

    creo que me confundió mas...

  • @lic.cristianm.sguazzin4062
    @lic.cristianm.sguazzin4062 2 года назад +1

    Lamento decir que no es correcto, justamente el nombre lo indica, INYECTAR una dependencia es enviar por contructor un objeto del cual depende. De por si, existe una dependencia fuerte cuando mostrás el primer ejemplo donde hace un new dentro del constructor, puede bajarse esa dependencia inyectándola. Aun así, en un UML se podría apreciar tal dependencia. Sin embargo; inversión de dependencia es hacer que el UML se vea de la siguiente manera CLASE === "depende de una abstracción" ===> INTERFAZ o CLASE ABSTRACTA Clase_De_la_cual_depende.
    En fin, aconsejo mejorar esa teoría o corregir dicho tutorial para no propagar un mal concepto.
    Gran abrazo ! ! ! .