Répondre

0

Si vous utilisez un ressort, il y a beaucoup de magie et si quelque chose ne fonctionne pas, il est vraiment difficile de comprendre ce qui ne va pas.

0

Disposer les bonnes choses au bon moment, sinon vous allez créer des fuites de mémoire.

0

Complexité de la configuration. Gardez un œil sur le fait que la complexité que vous obtenez avec les différents fichiers XML et la configuration vaut le problème que vous abordez. Un exemple: dans Apache HiveMind, la configuration des instances de classe de liaison les unes aux autres et la transmission d'informations de configuration peuvent facilement devenir plus difficiles à maintenir, à lire et à comprendre, alors l'équivalent Java aurait été nécessaire.

+0

Chaque grand conteneur moderne offre une sorte de configuration d'interface fluide ... La config XML est généralement obsolète –

3

Essayez de ne pas tomber trop pour un modèle de Service Locator, où une enveloppe statique à votre conteneur IoC vous fournit des instances de type xyz. Alors que vous en aurez peut-être besoin à certains moments, en veillant à injecter vos dépendances dans votre type de consommation, votre code sera beaucoup plus propre et rendra le conteneur beaucoup moins intrusif.

0

Dépannage peut être plus difficile dans mon expérience. Non seulement vous travaillez sur des interfaces, ce qui signifie qu'il peut être difficile d'identifier le type réel des instances utilisées en regardant le code. Vous déplacez également une grande partie du câblage de la compilation à l'exécution (ce qui est évidemment l'un des points de l'IoC, mais il ne fait pas de merveilles pour trouver des problèmes).

+0

D'accord. Je ne suis pas un grand fan des conteneurs IOC pour cette raison. C'est l'un des inconvénients que les gens ont tendance à oublier. :) – jalf

Questions connexes