Pull to refresh

Comments 6

сколько раз не пытался понять, чем даггер удобнее dependency injection через конструктор — так и не понял.

Я не такой хороший специалист в этой области, чтобы полноценно и внятно ответить на вопрос. Сейчас читаю ещё одну свежую серию статей на medium. Как найду время — опубликую перевод здесь. Автор статей разбирает основы, начиная с базовых идей DI. В этой серии статей можно будет найти ответ на вопрос, чем же хороша идея DI в сравнении с использованием связи через конструктор.

Инъекция через конструктор как раз является приоритетным способом при использовании Dagger. Но иногда это невозможно, например, когда созданием экземпляра объекта занимается фреймворк, и конструктор не должен содержать параметров. Например Activity/Fragment/Service в Android.

Спасибо за статью. Есть у меня одно замечание по поводу зависимости com.google.dagger:dagger-compiler:2.0. Для Dagger‡ и других APT-based продуктов лучше пользоваться gradle-apt-plugin. Это сделает компиляцию вашего проекта более прозрачной и безопасной, так как не будут путаться два разных classpath'а — один для компиляции вашего кода и второй для его генерации.

Спасибо за замечание, добавил его в статью.
Sign up to leave a comment.

Articles