Différence entre “Inversion de Contrôle”, “inversion de la Dépendance” et de “Découplage”

Je suis théorie de la lecture sur inversion de dépendance et découplage et je ne peux pas voir la différence entre les deux.

Inversion de dépendance parle de découplage des composants fonctionnels de sorte que le niveau plus élevé des composants ne dépendent pas des composants de bas niveau.

Découplage parle de la même chose et la manière de l'atteindre. Mais ensuite, nous avons Cio Conteneurs que gâcher les choses encore plus loin. Pourquoi ne sont-ils pas plutôt appelé Inversion de la Dépendance des Conteneurs ou encore mieux l'Injection de Dépendance des Conteneurs, car ils servent d'exécution de couplage de composants indépendants?

Puis nous avons Inversion de Contrôle. C'est essentiellement la même chose que Inversion de Dépendance n'est-ce pas? Pourquoi il y a trois termes qui décrivent la même chose? Ou suis-je aveugle?

  1. Quelle est la différence entre les trois?
  2. Ce n'Cio faire Cio Conteneurs?