I have seen many articles on this topics. There are many articles on internet for this topic and it is always been a bit difficult to understand this concept. So here, I tried to explain this topic in my simple(dumb) language. I know, this is not the perfect way but I hope that example(s) used here will help us to understand this topic.

To understand Dependency Injection, I think we first make ourself comfortable with following two concepts.

  • Dependency Inversion Principle (DIP)
  • Inversion of Controls (IoC)