легко решить с обычными привязками. Кроме того, он имеет хорошую поддержку, чтобы адаптировать его к вашим потребностям.
ации становятся популярными. Spring-3 их поддерживает. CDI зависит от них сильно (яне можешь использовать CDI без комментариев, верно?)
Мой вопросПочему?
Я слышал несколько вопросов:
«Это помогает избавиться от XML». Но что плохого в XML? Зависимости являются декларативными по своей природе, и XML очень хорош для объявлений (и очень плох для императивного программирования). С хорошей IDE (как идея) очень легко редактировать и проверять xml, не так ли?
«Во многих случаях существует только одна реализация для каждого интерфейса». Это неправда! Почти все интерфейсы в моей системе имеют фиктивную реализацию для тестов.
Есть еще вопросы?
А теперь мои плюсы для XML:
Вы можете внедрить что угодно куда угодно (не только код с аннотациями)
Что мне делать, если у меня есть несколько реализаций одного интерфейса? Использовать классификаторы? Но это заставляет мой класс знать, какая инъекция ему нужна. Это не хорошо для дизайна.
DI на основе XML проясняет мой код: каждый класс не имеет представления о внедрении, поэтому я могу настроить его и выполнить его модульное тестирование любым способом.
Как вы думаете?