Dependency Injection & Inversion of Control

Поділитися
Вставка
  • Опубліковано 7 лют 2019
  • Please support me on Patreon: / thesimpleengineer
    / thesimpengineer / schachte
    ryan-schachte.com
    Don't forget to subscribe! ➨ Website -
    ➨ New Video! - • Docker Client, Images ...
    ➨ / the-simple-engineer-80...
    ➨ Github - github.com/schachte
    ---------------------------------------------------------------
    This week, we're going to talk about the topic of Dependency Injection in Object oriented code. We will implement a solution in Java. You don't need a fancy container to do it, it's actually quite simple to do manually! We will look at how frameworks like Spring use these principles in their dependency injection container.
  • Навчання та стиль

КОМЕНТАРІ • 332

  • @TheSimpleEngineer
    @TheSimpleEngineer  5 років тому +36

    What do you guys want to learn next?

    • @stephane3115
      @stephane3115 5 років тому +26

      everything that is not language specific (Design patterns, SOLID, etc..)

    • @TheSimpleEngineer
      @TheSimpleEngineer  5 років тому +20

      @@stephane3115 Cool. I'll probably do a SOLID overview video and then separate deep dives like this one in a mini series! Thanks!

    • @stephane3115
      @stephane3115 5 років тому +3

      @@TheSimpleEngineer Sounds awesome! Looking forward to it!

    • @ilyasselamrani5674
      @ilyasselamrani5674 5 років тому +8

      Dude, I just wanted to let you know that your explanation is so FREAKING awesome, I dont why you have such few views, just keep up the good work, you gonna make it.
      Hard luck
      P.S.: I would love to see some generic videos about concepts that every software engineer should know

    • @ishandulet4289
      @ishandulet4289 4 роки тому

      too fast, 40% not clear

  • @amanbhatia7442
    @amanbhatia7442 5 років тому +89

    Fantastic explanation! So many DI and IOC explanations, but none of them seemed to convince my logic. Your video made the concept so easy to understand. Thanks

  • @Ajekiy
    @Ajekiy 5 років тому +36

    After a few hours of watching videos and reading articles, this has finally made the bulb of my brain turn on and understand exactly what IOC and DI are. The fact that you uploaded this a little more than a month before I needed it makes it even more amazing to me. Thanks a lot, buddy!

  • @pablogarin
    @pablogarin 3 роки тому +7

    Dude, congrats... I've watched about 10 IoC or dependency injection videos, and this is the most comprehensive one yet... Cheers!

  • @calvinsaxon5822
    @calvinsaxon5822 Рік тому

    Thanks for not spending 45 minutes on an introduction at the preschool level to what the concept of "depending" means in life in general. Much appreciated. You got right into the meat while still going at a level a beginner could understand. Much appreciated.

  • @ajay1124
    @ajay1124 4 роки тому +15

    Easily the best explanation I have seen, simple, succint and thorough - well done

  • @ceki9900
    @ceki9900 2 роки тому +4

    I watched tutorials, read books, followed documentation, but this fit me so well. Thank you very much! People could learn a lot from you in one day a lot.

  • @yoshihitotuba
    @yoshihitotuba 4 роки тому +48

    It was extremely easy to understand. It's an excellent lecture!
    Thank you!!

  • @laurentiuanghel1562
    @laurentiuanghel1562 Рік тому

    Finally a dude that explains the basic concepts and then actually shows the practical use.. congrats my dude.

  • @thedeveloper643
    @thedeveloper643 2 роки тому

    Perfect explanation for DI!
    Love from South Korea

  • @koushikrakib7605
    @koushikrakib7605 3 роки тому +5

    Oh man, I watched my instructor's video 3 times, didn't get the concept. But you made me understand everything within 8 minutes. I think the way you code and shows example is really helpful. Hats off!

  • @shakik19
    @shakik19 9 місяців тому

    I was very confused with this IoC concept and watched many videos on UA-cam and nobody explained it better than you.
    I wish I could give thousands of likes to this video.

  • @rajibsarker3729
    @rajibsarker3729 3 роки тому +1

    thanks for showing the problem with constructor injection. 😊

  • @BabaDee08
    @BabaDee08 2 роки тому

    This is the best video explanation for IoC, dependency Inversion principle and dependency injection. 👏👏👏✌️

  • @aliraza9511
    @aliraza9511 2 роки тому

    Men your voice is very clear, to be honest everything was just clear! very good understanding

  • @ashanlingam312
    @ashanlingam312 3 роки тому +1

    you are an amazing teacher with great pace and tone of voice and you really know how to communicate important information in a simple easy to understand way. thank you!

  • @appyolala
    @appyolala Рік тому

    I've been searching & watching videos about DI. This is the best so far!!!? You've got a gift of teaching!!! Thank you very much!!!

  • @MinhalNadeem
    @MinhalNadeem Рік тому

    Finally someone explained DI in a very practical and simple way. Thankss!

  • @sk8leesk8
    @sk8leesk8 3 роки тому

    I've listened to other people explaining this topic. You've had the best, easiest to listen to explanation. Thanks

  • @xIncrement
    @xIncrement 3 роки тому

    Very nice! Keeping it simple.
    I've watched multiple videos on the subject, but your explanation condensed the answer to "why", which helped me a lot to start using the principle in practice, so thanks a ton!

  • @kenmtb
    @kenmtb 2 роки тому +1

    This is gold. Thank you for showing your teaching skills and makings a concise no nonsense video. This is the way to learn a concept.

  • @nabidulalam6956
    @nabidulalam6956 3 роки тому

    Best video in yt on Dependency Injection & Inversion of Control.

  • @sristijaiswal1013
    @sristijaiswal1013 3 роки тому

    After hours of wasting my time on different articles and videos, I finally understood from this video. Thanks a lot.

  • @okeuwechue9238
    @okeuwechue9238 Рік тому

    Very helpful vid. Thnx.
    @8:50, the issue you introduced - of having 2 databases - can easily be resolved by employing a façade instead of DI.

  • @stefanoctaviansterea1266
    @stefanoctaviansterea1266 Рік тому +1

    I can't believe I watched a lot of videos about DI and IoC in Laravel and still couldn't understand the concept and now I find your video about the same concepts in Java and it's all crystal clear out of a sudden. Your explanations were so good. Thanks a thon!

  • @adeyemiblessing
    @adeyemiblessing 2 роки тому

    Been watching videos about dependency injection for the last few days and I never quite understood it like you just explained. I'm really glad UA-cam algorithm listens to my wants. You just earned a sub

  • @irfaanjamarussadiq5500
    @irfaanjamarussadiq5500 3 роки тому

    This really is the best explanation of DI and IOC I have seen yet! Your explanation was very easy to understand!

  • @mohammadcali554
    @mohammadcali554 3 роки тому +4

    Damn, I've been using Java for over 7 years now and I haven't fully grasped Dependency Injection/Inversion of Control until I found your video. I just discovered your channel and this video and it is very simple to understand. I think you are on par or might even be better than JavaBrains. Definitely, better than other UA-camrs who teach Java technologies and tools.

  • @cannonkalra7133
    @cannonkalra7133 4 роки тому +10

    This was amazing. It just explained everything I had my doubts about.

  • @jetgens
    @jetgens 4 роки тому

    Dude. You blew my mind with how simple you made this.

  • @dibyanshumishra3536
    @dibyanshumishra3536 4 роки тому +3

    The best tutorial on Dependency injection yet! Seems to tackle every "why" regarding the topic. A suggestion: You could have had a class that creates the object(initializes database) and return the object before going into the framework section. The most perfect explanation on the internet.

  • @vincez691
    @vincez691 3 роки тому

    I have spent literally years trying to find a decent video or article to understand DI. This is it right here, the explanation just makes sense

  • @babnishvyas6317
    @babnishvyas6317 3 роки тому

    Wow what a wrap-up! Explaining beautifully from the beginning and connecting it to Spring seamlessly! Amazing Stuff:D

  • @slobodanbulatovic5300
    @slobodanbulatovic5300 3 роки тому

    By far the best use of code to explain this concept! Thank you !

  • @GammaSouljah
    @GammaSouljah 3 роки тому

    Im learning C# and Dependency Injection but was confused by some of the video on youtube specifically targeting c#. I stumbled on to your video and you made the concept so Clear! Thank you!

  • @rajatverma1688
    @rajatverma1688 3 роки тому

    Lucky to find this video, whenever I need to revise DI, IoC I prefer this one, it's simple, crisp, and clear. Thanks a lot :)

  • @FritsvanDoorn
    @FritsvanDoorn 3 роки тому

    Thank you for this explanation. I did not understand this concept until you talked about the usage of unit testing and then the quarter fell. Thank you.

  • @riyanshbiswas
    @riyanshbiswas 2 роки тому

    By far the best explanation for IOC and Dependency Injection. All other channels complicate that stuff. Much appreciated. Subbed your channel as well.

  • @prabhatracherla3098
    @prabhatracherla3098 3 роки тому

    I don't know Java much, I just wanted to understand the principles of DI. And you nailed it. Crisp, fast, to the point. Kudos

  • @malvaloca
    @malvaloca 4 місяці тому

    What an amazing and clarifying explanation. Thanks you all so much!

  • @moisescruz4499
    @moisescruz4499 2 роки тому

    The best explanation of these two very important concepts. Thank you Ryan

  • @steambassador
    @steambassador 4 роки тому +1

    Finally, today i have understood IoC explicitly!!! yes you are a gooood lecturer!

  • @Ryan-hk5yb
    @Ryan-hk5yb 2 місяці тому

    Watching this 5 years later, still a fantastic video

  • @rajnishtiwari1227
    @rajnishtiwari1227 Рік тому

    Still after 3 years its most relevant video on this topic. Kudos from India.

  • @recepcakir4866
    @recepcakir4866 3 роки тому

    This is the best and greatest explanation on all over the internet!! After spending hours trying to learn this s*it I've finally found you. Thanks a lot!!

  • @marksimpson4310
    @marksimpson4310 3 роки тому

    I watched quite a few videos before I found this gem. Thanks for keeping it simple

  • @ayoubdkhissi
    @ayoubdkhissi Рік тому

    this explanation couldn't be better!! thank you

  • @chaluri
    @chaluri 3 роки тому

    Best lecture I seen about this topic.

  • @harshadmanglani1309
    @harshadmanglani1309 3 роки тому

    This was fantastic, the easiest explanation for DI ever!

  • @soumenr2168
    @soumenr2168 Рік тому

    This is a great DI explanation with Realtime example !
    Thanks Ryan for sharing a great content.
    🤟❤
    Automatic dependency part is really helpful since it reduces manual dependency injection

  • @adeizayusuf
    @adeizayusuf 3 роки тому

    This is the best video on IOC I've seen on UA-cam.

  • @thegt
    @thegt 3 роки тому

    Beautiful explanation and comfortable demonstration! Thanks!

  • @srch100
    @srch100 4 роки тому

    Second time I search for something that leads me to this Channel. Subscribed

  • @j.johnmario8369
    @j.johnmario8369 4 роки тому

    The BEST explanation of DI on UA-cam

  • @danmaia575
    @danmaia575 4 роки тому

    Awesome video, very well explained. Its always been tricky to understand it but now I do. Thank you!

  • @talesrodriguesjardim5088
    @talesrodriguesjardim5088 Рік тому

    AMAZING! You just turn my brain to another level. Thanks! and keep doing your videos

  • @justincheong6159
    @justincheong6159 5 років тому

    Fantastic! Now I really got a clear picture of why this principal/design is needed!

  • @widget_wizard
    @widget_wizard 5 років тому +2

    Thank you for this explanation. Subscribed, I hope you've got time to keep software design principal videos coming. Really good stuff.

  • @Rochal147
    @Rochal147 2 роки тому

    Thanks to you and your simplest examples to understand this concept.

  • @Bristerireland
    @Bristerireland 4 роки тому +1

    Awesome, thanks! Something went click, finally!!! Been struggling to understand dependency injection and IoC up until now

  • @abdulkhader567
    @abdulkhader567 3 роки тому

    i have been looking for a content like this for long time, a finally found here... concepts explained very much simple. thanks a lot.

  • @weisjerry
    @weisjerry Рік тому

    Excellent. In 10 minutes I went from being almost clueless about dependency injection to having a basic understanding.

  • @lee38xzy
    @lee38xzy 3 роки тому

    Awesome! Great explanation in a super short video !!

  • @user-hq2yx6vv2y
    @user-hq2yx6vv2y 4 роки тому

    Really good explanation! Base on the problems that we met in actually programming, and then show how IoC solve these problems. Very easy to understand ioc from your tutorial

  • @j.q.6208
    @j.q.6208 3 роки тому

    Awesomely Explained, Thank you!

  • @hervelabrie-durand4574
    @hervelabrie-durand4574 2 роки тому

    Good explanation, I did not understand IoC and DI before watching your video!

  • @alexdomenici8503
    @alexdomenici8503 4 роки тому +1

    Straight to the point and very well done. You could also post the first 7 minutes (7:05) as a separate video and that will make an excellent introduction to the concepts of IoC and dependency injection, regardless of one's technology of choice. I'm definitely subscribing :)

  • @crazyco95
    @crazyco95 3 роки тому +1

    This was really well done and helpful. Thank you.

  • @saurabh5392
    @saurabh5392 3 роки тому

    Thank you very much! you made it extremely easy to understand.

  • @nerminsehic4542
    @nerminsehic4542 2 роки тому

    Mind blowing explanation! Thank you so much :)

  • @aposotlossourgakis8618
    @aposotlossourgakis8618 2 роки тому +1

    Perfect explanation! Thank you very much for this!

  • @gasparottogui
    @gasparottogui 3 роки тому

    Great video man! These are confusing concepts, which you were able to put in a simple way! Thanks for sharing!

  • @mattgraves3709
    @mattgraves3709 3 роки тому

    Excellent information!
    Thank you so much!

  • @jongxina3595
    @jongxina3595 2 роки тому

    Awesome. Finally a tutorial that makes sense. Thank you!

  • @chrisolivier6415
    @chrisolivier6415 4 роки тому +1

    I have to agree with most up top, really well explained, thanks and well done!

  • @apekshask3918
    @apekshask3918 3 роки тому

    Great video!!! Answered so many questions

  • @theUSpopulation
    @theUSpopulation 2 роки тому

    Thank you for this! I had to look into these for a job interview and this video is way more comprehensible than my college notes! haha

  • @nat6106
    @nat6106 4 роки тому

    Top quality explanation, very clear! Thanks

  • @beezow7113
    @beezow7113 2 роки тому

    I love the lamp analogy. I am stealing it.

  • @Merserissugoi
    @Merserissugoi 4 роки тому

    ive been looking everywhere to understand this concept. this was so well explained.

  • @sabita1225
    @sabita1225 4 роки тому

    this is so good very clear explanation for IOC and DI, the example is pretty straight forward and simple to understand for beginners with no knowledge of spring, thank you!!

  • @procrastinator24
    @procrastinator24 Рік тому

    nice and clean explanation! Thank you so much!

  • @timpatterson4188
    @timpatterson4188 4 роки тому +1

    This is an outstanding explanation, thank you.

  • @kinowesunga563
    @kinowesunga563 3 роки тому

    Thank you so much for this wonderful lecture!!!

  • @technovativehub8367
    @technovativehub8367 3 роки тому

    Very well explained. Thank you.

  • @tzuyulk
    @tzuyulk 3 роки тому

    Thank you! I’m a complete beginner and I was having really hard time understanding what ioc is about. Your explained it so clearly.

    • @kamikaze9785
      @kamikaze9785 3 роки тому

      I still don't understand i think i am dumb

  • @MohiuddinEbnaKawsar
    @MohiuddinEbnaKawsar 8 місяців тому

    very nice clean and simple. good job

  • @juanbarman
    @juanbarman 3 роки тому

    thanks so much mate !!! this tutorial was sooo great !!

  • @jith334
    @jith334 Рік тому

    Finally I am able to feel the real benifit of doing this after hearing these terms repeatedly for over a decade

  • @vincentrowold1104
    @vincentrowold1104 3 роки тому

    Awesome video. Finally, it makes sense

  • @azmirfakkri3745
    @azmirfakkri3745 3 роки тому

    This explanation is amazing!

  • @Nata_web
    @Nata_web Рік тому

    Thanks.Very clear explanations👍

  • @abolfazlamjadi3571
    @abolfazlamjadi3571 3 роки тому

    short ,fast and useful . thanks

  • @RankMotion
    @RankMotion 5 років тому +1

    Excellent explanation! Thank you!

  • @user-vd6tu7wf8z
    @user-vd6tu7wf8z 5 місяців тому

    Fantastic video, very well done

  • @ayoubelhioui2205
    @ayoubelhioui2205 9 місяців тому

    Fantastic explanation, thank you so much.

  • @iubob98
    @iubob98 3 роки тому

    holy shit. I have not found such a good explanation of this concept on youtube. I have given up on those 2 hour tutorials, i just needed a high level explanation. This should've have more views!

  • @janezperme9770
    @janezperme9770 5 місяців тому

    Short and to the point. 😎 Thanks !

  • @BuffaloCanCode
    @BuffaloCanCode 3 роки тому

    Nothing can be better than this. As a crash course I used to see this video :D

  • @sudhanshushakya4579
    @sudhanshushakya4579 2 роки тому

    Great explanation! 🤩 Thanks!