У меня есть вопрос, который прослушивает меня в течение некоторого времени, и поскольку я не смог найти ясный ответ, я решил задать его здесь.Использует @Autowired считается хорошей практикой?
Используется @Autowired
считается хорошей практикой? Другими словами, имеет ли смысл использовать autowiring для производственного кода, или я должен рассматривать его как нечто, что «приятно иметь» для легких проектов, но не для «серьезного бизнеса»? Или это просто вопрос мнения?
У меня всегда было ощущение, что разработчик autowiring в принципе отказывается от предоставления «явного» набора правил впрыска и полагается на фреймворк, чтобы делать это правильно. Я могу казаться консервативным, но это не похоже на хорошее дизайнерское решение для меня.
В обоих направлениях имеется миллион аргументов, что означает, что это в значительной степени вопрос личных предпочтений. Я предлагаю [Googling it] (https://www.google.com/search?q=annotation+vs+xml&ie=utf-8&oe=utf-8), чтобы получить больше перспективы, поскольку StackOverflow обычно не хочет отвечать на мнения, основанные на вопросах. – Keith
Как еще вы можете получить экземпляр зависимой службы? Вызов конструктора? Вызовите фабричный метод? Вызовите JNDI/ServiceLocator? Ни один из них не является легко проверяемым, и никто из них не поддерживает насмехание эффективно. Кроме того, сыворотка, если бы я позволил коду, чтобы найти зависимости «загрязнять» мои бизнес-логики? –