0

J'essaie de comprendre comment fonctionne DI dans angulaire 2.Pourquoi l'injection de dépendances mieux que instanciation dans angulaire 2

En termes simples, DI des moyens pour injecter le service que nos composants pourraient avoir besoin, plutôt que de créer le service ou instanciation du service dans la classe de composant.

(Si cela est correct, alors je me sens angulaire 2 documentation est un peu trompeur car il utilise la terminologie de « cas créant » tout en expliquant « fournisseur d'injection »)

maintenant , techniquement cela se résume à: - utiliser constructeur au lieu de nouveau

Mais pourquoi, quels sont les avantages d'utiliser un constructeur sur new? Existe-t-il des exemples/ressources en ligne que je peux suivre ...

+0

https://stackoverflow.com/questions/3386889/difference-between-creating-new-object-and-dependency-injection Quelques infos à la question précédente –

Répondre

0

Les meilleurs avantages auxquels je peux penser, c'est que la DI convient très bien aux tests unitaires. Imaginez que vous souhaitiez tester une classe dont la fonctionnalité déclenche une autre unité dont vous souhaitez tester la fonctionnalité dans des scénarios distincts. Dans ce cas, si vous utilisez DI, vous pouvez créer une instance d'objet factice qui ne servira que ce scénario et l'injecter afin que l'unité que vous testez puisse être isolée. Ce mécanisme ne peut pas être atteint si vous avez créé cette instance dans la classe de test elle-même.