Learn Dependency Injection and Write Better Code

Поделиться
HTML-код
  • Опубликовано: 13 июн 2024
  • Dependency Injection is a concept that you need to master. It helps to write code that scales and code that can be tested.
    Register your interested for bootcamp here: amigoscode.hopp.to/bootcamp-r...
    #amigoscode #dependencyinjection #java
    Don't Forget to
    ===========================================
    💯 Subscribe to Amigoscode - bit.ly/2HpF5V8
    💯 Courses Available for free here - amigoscode.com/courses
    💯 Join Private Facebook Group and Discord - amigoscode.com/p/join-community
    ⭐ Table Of Contents ⭐
    ===========================================
    00:00 - Intro
    01:31 - Dependency Injection
    21:15 - Outro
    🙊 Here are the goods for all my videos video 🙊
    ► Recommended Books
    ===========================================
    - Clean Code - amzn.to/2UGDPlX
    - HTTP: The Definitive Guide - amzn.to/2JDVi8s
    - Clean Architecture - amzn.to/2xOBNXW
    ► Computer and Monitor
    ===========================================
    - New Apple MacBook Pro - amzn.to/3464Mmn
    - Dell 27 INCH Ultrasharp U2719D Monitor - amzn.to/2xM3nW1
    - Double Arm Stand Desk Mount - amzn.to/3aYKKfs
    - USB C Hub Multiport Adapter - amzn.to/2Jz7NlL
    ► Camera Gear
    =============================================
    - Sony ILCE7M3B Full Frame Mirrorless Camera - amzn.to/346QIJn
    - Sigma 16 mm F1.4 DC DN - amzn.to/2wbic3Q
    - Sigma 33B965 30 mm F1.4 DC DC - amzn.to/39G37Fd
    ► IDE & Tools I use for coding 💻 🎒
    ===========================================
    - ITerm
    - VsCode
    - GoLand
    - IntelliJ Ultimate
    - Sublime
    P.S
    ===========================================
    💯 Don't forget to subscribe | bit.ly/2HpF5V8
    💯 Join Private Facebook Group and Discord - amigoscode.com/p/join-community
    💯 Follow me on Instagram | bit.ly/2TSkA9w
    ❤️ Thanks for watching
  • НаукаНаука

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

  • @amigoscode
    @amigoscode  Год назад +18

    Register your interested for Amigoscode bootcamp here: amigoscode.hopp.to/bootcamp-register-interest

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

      Can you please do a video on how to create a java resume or portfolio. Especially for a backed developer?

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

      Please can you make tutorials on DevOps, springboot BDD Testing, and more advanced topics and concepts, also how to do desktop app development with java

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

      Thanks for the video. Loved the Intellij theme you have. Which one is it?

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

      Salam Amigos

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

      Walikomasalam,
      Thank you for not using the music brother. May Allah be please with you. ❤

  • @terrah33
    @terrah33 Год назад +136

    Just a mention for the viewers: at @17:50 a class cannot be annotated with @Bean since its scope is limited to methods. Usually we use @Bean annotation on methods in a class annotated with @Configuration when we use external dependencies to generate beans for them. On the other hand, in order to mark a class as a bean we use the @Component annotation, which is a stereotype annotation (like @Service, @Repository and @Controller).

    • @erickjhormanromero6905
      @erickjhormanromero6905 Год назад +11

      Good to had done this clarification may be a newbie in programming could have been a little confused

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

      @@erickjhormanromero6905 yeah....like me 😁...new in Spring

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

      Thanks for the info. I'm actually one of these newbies. I use quarkus but I'm still learning how things work under the hood.

  • @johnnya246
    @johnnya246 Год назад +62

    The best explanation of the dependency injection and the singleton pattern! Simple and to the point!

    • @erickjhormanromero6905
      @erickjhormanromero6905 Год назад +5

      He never explaind singleton design patten just mentioned it. 😃😃

    • @user-rl5pb5un2f
      @user-rl5pb5un2f Год назад

      Helpline📲📥⬆️
      Questions can come in⬆️

    • @SoniaChavez-je7hq
      @SoniaChavez-je7hq 3 месяца назад

      @erickjhormanromero6905 yes he did, indirectly he did when he said that with singleton a connection class was instantiated just once, correct me if I m wrong.

  • @nguyenminh1402
    @nguyenminh1402 15 дней назад

    I always love your tutorial. You make everything clear and simple.

  • @Secretclaps
    @Secretclaps Год назад +4

    Amazing! best injection tutorial I saw until this point . The issue with injection is that is so simple it is hard to understand, it is something that comes naturally.

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

    I've been stuck to this for days, thank you!

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

    absolute amazing SOLID tutorial!

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

    Thank you! You explained it very clearly

  • @_freeworld
    @_freeworld Месяц назад

    I'm an android developer and I needed to understand dependency injection, I think this video has given me an idea of when dependency inject is about.

  • @franke1917
    @franke1917 2 месяца назад

    Very interesting and easy explanation! Thank you so much!

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

    You're amazing! Saying hi from the Philippines.

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

    Thanks bro again you nailed it, I've read a lot of books about the dependencies injections but I couldn't find what I was looking for, lastly I can get my head around it in this video. my ALLAH bless you

  • @Griefed_
    @Griefed_ Год назад +5

    Awesome video, thank you very much!
    Looking forward to the DI videos. I hope you give us a glimpse of manually doing singleton DI just to show us how it is done, in case one does not use Spring or something else.

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

      I don't know why you need this if Spring is one of the most used java framework and will do all for you. but check this.
      To achive that is just to check if there's already a instance on such dependecny to be injected in the constractor of the target class and return the same instance. ruclips.net/video/tSZn4wkBIu8/видео.html

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

    Amazing explanation, Congrats from Brazil !!!!

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

    Great, Baraka allahou fik.

  • @kostiantynkarzhanov9216
    @kostiantynkarzhanov9216 4 месяца назад

    Thank you so much! Fantastic explanation! 💛

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

    This is really excellent tutorial on dependency injection ..... thanks

  • @Diego-Garcia
    @Diego-Garcia Год назад +2

    Now everything make sense!!! That's why people create an Interface for every class; that's why people assign every field inside the constructor.
    The Interfaces are created to decouple the "true" class, being able to pass other objects with the same signature, LIKE A MOCK CLASS.

  • @bartex10101
    @bartex10101 Год назад +26

    I think that your explanation of dependency incjection in pure java is quite good. On the other hans I think you should say something about pross and cons of context dependency injection. There is some problems with it and it should not be used as remedy for everything. For example in huge applications when you have thousands of services etc. it may become bean hell where dependency tree will looks like spaghetti cause of beans flying everywhere. Another drawback is that if you make your class a singleton bean and this class (for example service) is used only from time to time it still wastes memory. Garbage collector can't collect it even if you stoped to use this class way ago. So people of java don't be afraid to instantiate objects with new () keyword! :D
    Sorry for mistakes, English language is not my native language ;)

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

      perfect.. people is very naive when coding with this patterns. And call the new operator of "bad code" is funny.

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

      Great comment

    • @eufraniodiogo50
      @eufraniodiogo50 Год назад +4

      Thanks, dude, for explaining to us that it's not the world saver and it could not be the best approach to take in all cases. Thanks, and about your English it's fine, it's not also my native language.

  • @SoniaChavez-je7hq
    @SoniaChavez-je7hq 3 месяца назад

    It was easy to understand this idea with your explanation, thx

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

    Can't wait for the course to come out!

  • @andrekreou1
    @andrekreou1 Год назад +4

    Just in time! I am writing my MSc thesis and this information is valuable!

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

      dependency injection is a bachelor 2. semester concept man 😶

    • @andiuptown1711
      @andiuptown1711 2 месяца назад

      @@mad616No it’s not lol

  • @user-oq2zo5ki8c
    @user-oq2zo5ki8c 8 месяцев назад

    Wow, it's super helpful!

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

    Wow, the best video for beginners. Thanks sir for your video, so sweet explants about the proccessing.

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

    Great explanation thank you

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

    Subscribed! thank you sir!

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

    Assalamwalaikum. Thank you for the video. May Allah bless you with all of His blessings. You are a great teacher and just learning from you is just so easy than from other resources 😊❤

  • @89Valkyrie
    @89Valkyrie Год назад

    Excellent explanation.

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

    Jazakallah brother

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

    Awesome explanation of DI

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

    Thank you so much sir. ❤️

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

    Great thanks so much bro

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

    Thank you!

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

    Thank You brother

  • @paulo__vieira
    @paulo__vieira Год назад +8

    For those who wanna learn about Beans with details, I recommend the Spring Start Here book from Laur Spilca, it's an introductory book about Spring where the author use some analogies to explain about beans, it's quite interesting.

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

      Do you have it in digital format?

    • @andiuptown1711
      @andiuptown1711 2 месяца назад

      @@alexisdonasearch it on Reddit, I found it there!

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

    Hope you explain more about OOP. Thanks

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

    great video! cyclic dependency is a great topic for a future video.

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

    Great explanation 👌
    Haji 😊

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

    MashaAllah brother. You are talented. I'm learning from your videos. And I am adapting it to Dart language.

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

    great video. keep it going brother.

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

    Thank you bro for all the content you bring toi us realy so helpful. I want just to Ask you to do more vidéo on java even the easiest Java topics it will be very for everyone. For exemple Can you make a vidéo about exceptions how jvm please bro!

  • @thEstRonG3r
    @thEstRonG3r Год назад +3

    Just small thing, at 15:55, if HEAP is full, you will get OutOfMemoryError, and not StackOverflowError.

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

    Díky!

  • @world-observer3460
    @world-observer3460 Год назад

    The DI concept is confusing me for a while util i see this clip. Really good work Bro.

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

    thank you for great tips and concept topics like this. Asselamu aleikum

    • @user-rl5pb5un2f
      @user-rl5pb5un2f Год назад

      Helpline📲📥⬆️
      Questions can come in⬆️.

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

    Thanks for the tutorial Brother. Thanks for sharing . Your english so easy to understand. How do you record your video? Do you use some special device ? I liked your Java series .

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

    Thanks for this video nelson✌. Can you cosider doing a video on payment integration in spring boot?

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

    great video !!

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

    NestJS does the same thing! Good tutorial thanks!

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

    Bro I love your Videos, where you learned this all?

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

    Great!❤️

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

    Keep going.

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

    Based video - as always!

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

    Perfection.

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

    RUclips insists on showing me Java code... as a JavaScript developer - but big fan of dependency injection in general. Works in a functional context as well (i.e. split stuff in more functions, pass stuff needed as params rather than make "scope" do all the lifting) - then test the functions directly.

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

    Awesome

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

    Qual o tema e a fonte que você está usando? Ótimo conteúdo

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

    So dependency injection is what's being used in MVP is it at Presenter to be specific? I am currently familiarizing my self to the patterns, and so far, i think patterns are awesome.

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

    keep up my friend always check new videos

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

    Liked immediately

  • @joseferreira7415
    @joseferreira7415 11 месяцев назад +2

    I had a doubt. In your Spring boot tutorials, @Autowired is not used. The class is annotated with @RequiredArgsConstructor and the dependency attributes are declared as final. In this video, I understood that @Autowired is used to inject the dependency instance that was found. Why is @Autowired not used in the construction of your Spring projects? Thank you for everything, I'm a big fan of yours!!

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

    Assalamu alaikum brother. Your videos are too good.
    Will the bootcamp be available free of cost ?

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

    Hi @Amigoscode,
    You have beautifully explained the DI. I have one question here. I am using DI using and have a situation like below
    public class Demo {
    private CarDAO carDao;
    private NewCar newCar;
    public Demo (CarDAO carDao){
    this.carDao = carDao;
    newCar = new NewCar(this.carDao);
    }
    Can you please guide how to handle this situation ... without instantiating the newCar in the constructor..

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

    What’s that lighting setup?
    The video is crispy.

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

    is there a video after this to recommend to understand the rest of annotations in spring framework?

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

    great video. This video belongs to a playlist? in that case, what is the link of that list where you can find, for example, the video in which you talk about the annotations like the @Bean

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

    HI! PLease which app are you using to make this schema? Thanks

  • @YT-vx9sz
    @YT-vx9sz Год назад +1

    Bro I was just searching for a good video on this topic😂

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

    Can you do a video on programminng to interfaces in Java?

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

    Usssalaam vaaleykum 👍👌

  • @optimisticenigma283
    @optimisticenigma283 2 месяца назад

    Is this part of a course playlist, because I can't find the other videos he refers to when saying "earlier we talked about" or "we'll cover this later on".
    I genuinely liked the explanations and so was wondering where I can find the full playlist?

  • @Kim-tr5op
    @Kim-tr5op Год назад

    do u have a vid about testing in spring?

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

    Legend

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

    It's an awesome video, I just still have a small question, can you explain a little bit more what the purpose of the annotation @Autowire is. That's the only thing I'm still kinda confused about. Thank you in advance.

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

    Essalamo Aleykum bro is there any book that you can advise us with to get a deep understanding for the dependencies injection?

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

    Waalekum assalam...

  • @pablo-2349
    @pablo-2349 Год назад

    its a good programing coure?
    sorry for bad englisch

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

    May Allah reward you for those explanations.

  • @San.Man___
    @San.Man___ 17 дней назад

    CDI in Jakarta EE😄

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

    is the boot-Camp free or? and also is it online? ....and if possible can @Amigoscode make a separate video explaining in a bit of depth how the boot-Camp will carry out, because i have a lot of questions about i have i am very much interested in joining

  • @user-kh6rp6yx1j
    @user-kh6rp6yx1j Месяц назад

    وعليكم السلام ورحمة الله, الحمد لله.

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

    I'm currently studying for a backend position and I need to learn dependency injection on python, currently trying to implement it on my own linked list with its own node class, could anyone provide an example or explain more or less how could I actually implement dependency injection?

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

    Waalaikum Salam brother

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

    Salam alikum Amigo ,
    What should I now to be ready to start with Spring ?
    Pleas let me now 🤗

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

    what's the previous video of this course?

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

    19:30 Do we really need to put either @Autowired or @Inject at the constructor? I thought spring sees the constructor argument and automatically injects the dependency

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

      yupp put autowired annotation so it can be automatically injected

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

    Wa lakim alsaalam

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

    💡

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

    Make video on micro services

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

    If Spring boot was never invented I would never have continued and loved java.

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

    What's with emo service?

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

    Is there a play list?

  • @Aswodel
    @Aswodel 4 месяца назад

    Where is the previous video before this? you say: "earlier in this course we..." is that video available on RUclips? Or do we need to pay? And if so, where?

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

    👍

  • @CarlosVera-jy7iy
    @CarlosVera-jy7iy Год назад

    Greetings amigos code, because I do not receive any information from the bootcamp to my email I have already registered

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

    Do Jsp and servlets

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

    Could not get how DI makes testable and loosely coupled code?

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

    Then why do we use @Autowired annotation? How is it different from this scenario?

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

    Aren't you defeating the purpose of dependency injection by implementing with concrete implementations instead of interfaces, you still have a tightly coupled dependency? I haven't used @Bean so maybe this solves the problem.

  • @lisafox9026
    @lisafox9026 Месяц назад

    9:16 if Carservice has 10 fileds, it must be 10 parameters in condtructor?