Lorsque vous traitez avec des objets qui nécessitent des données connues uniquement lors de l'exécution, comme un nom d'utilisateur et mot de passe, où doit se produire l'instanciation d'objets: à l'aide de nouveau, dans une usine ou dans un conteneur de DI?Conteneur DI, usine, ou nouveau pour les objets éphémères?
Par exemple, je pouvais new
un objet une fois que je les données:
UserCredentials creds =
new UserCredentials(dialog.getUsername(), dialog.getPassword());
Ou, je pourrais utiliser une usine:
UserCredentials creds =
CredentialsFactory.create(dialog.getUsername(), dialog.getPassword());
Ou, je pourrais utiliser un fournisseur dans un Conteneur DI (qui dans ce cas serait essentiellement une usine pilotée par paramètre). [Exemple de code omis.]
Il semble à la fois erroné d'utiliser le conteneur DI pour quelque chose de si simple mais il semble également erroné de ne pas l'utiliser au maximum.
Je n'avais même pas consciemment pensé à l'usine statique par rapport à l'usine abstraite. Merci pour le commentaire sur la valeur ajoutée à cet égard. –