2010-07-14 4 views
3

Un de mes amis (il est un développeur .NET/C++, comme je suis) m'a demandé:Injection de dépendance: avons-nous tous besoin de savoir cela?

injection de dépendance: avons-nous tous besoin de savoir? Pourquoi?

Pourriez-vous s'il vous plaît dire:

  1. Votre avis: avons-nous vraiment besoin de savoir ce modèle et comment la mettre en œuvre?
  2. Bonne référence (lien) qui pourrait expliquer "pourquoi?"

Merci beaucoup.

P.S. Je comprends que je demande beaucoup ... mais je ne peux pas trouver une bonne référence ... me

+2

Copie possible: http://stackoverflow.com/questions/130794/what-is-dependency-injection –

Répondre

1

bons commentaires sont publiés ici, mais il n'y a pas de réponse claire à la question «Votre opinion: avons-nous vraiment besoin de connaître ce modèle et comment le mettre en œuvre?"

À mon avis, il devrait être « oui » si au moins l'une des options est appliquée à vous:

  • vous devez écrire tests unitaires (automatique) pour l'application;
  • vous devez découpler les composants de votre application;.
  • vous voulez avoir la capacité de changer facilement source de données

réponse sur la question « Pourquoi? » sont répertoriés dans les liens suggérés

.

Un grand merci pour votre aide.

4

injection de dépendance est un outil de création de code à couplage lâche. En tant que tel, il n'est pas obligatoire, mais il facilitera les changements, le refactoring et les tests. Si vous voulez une discussion approfondie de DI et comment il peut être appliqué, je recommande le livre à venir Dependency Injection in .NET. Plusieurs chapitres sont disponibles en téléchargement pour vous aider à démarrer. Alors que les exemples dans le livre sont tous en C#, les idées sont universelles.

3

injection de dépendances est un outil qui aide un programmeur ou un architecte à concevoir un code modulaire, indépendant, faiblement couplé et facilement testable. Ce n'est pas une exigence obligatoire, mais cela a tendance à simplifier le développement logiciel car il soulage beaucoup de problèmes de gestion de la dépendance qui se poseraient autrement. En découplant vos composants de leurs dépendances, il est également plus facile de tester ces composants séparément du reste d'un produit plus important.

Il ya environ un an, j'ai posté une réponse à une question de l'IoC (Inversion of Control) sur le SO. Vous pouvez trouver la réponse utile, car les concepts s'appliquent également à l'injection de dépendances, car IoC est simplement un moyen d'atteindre DI.

Can anyone explain to me, at length, how to use IOC containers?

De plus, voici quelques bonnes références expliquant DI plus en détail:

Questions connexes