При работе с объектами, для которых требуются данные, известные только во время выполнения, такие как имя пользователя и пароль, где должно происходить создание экземпляра объекта: с помощью нового, в factory или в контейнере DI?
Например, я мог бы просто new
объект, когда у меня есть данные:
UserCredentials creds =
new UserCredentials(dialog.getUsername(), dialog.getPassword());
Или, я мог бы использовать factory:
UserCredentials creds =
CredentialsFactory.create(dialog.getUsername(), dialog.getPassword());
Или я мог бы использовать поставщика в контейнере DI (который в этом случае будет по существу управляться параметрами factory). [Пример кода опущен.]
Кажется, что неправильно использовать контейнер DI для чего-то настолько простого, но также кажется неправильным не использовать его в полной мере.