Зачем нужен Dagger?

 

В своих проектах я использую паттерн Dependency Injection. Он дает возможность:

  • уменьшить зависимость между объектами
  • сделать код более читабельным
  • упростить написание тестов

Библиотека Dagger берет на себя часть реализации этого паттерна и, тем самым, упрощает работу разработчика и снижает количество написанного кода.

Звучит заманчиво, не так ли? Но не все так просто. Сам по себе Dagger несложен в использовании, но понятных и хорошо изложенных курсов по нему найти трудно. Поэтому я решил создать свой.

Изучая Dagger мне пришлось просмотреть материалы с нескольких ресурсов - и нигде я не нашел полной информации. Кроме того, я потратил кучу времени на создание тестового проекта и эксперименты, чтобы до конца разобраться в теме. Тогда я понял, что нужно сделать свой курс. В четырех уроках я обобщил всю собранную информацию и дополнил примерами из практики. На чтение каждого урока у вас уйдет не больше часа. Уроки созданы в стиле startandroid.ru – все доступно и по шагам.

 

 

На текущий момент доступны следующие уроки:

  • Урок 1. Введение

    В этом уроке я подробно расскажу о Dagger и его возможностях. Мы разберем, что такое Component и Module, подключим Dagger к проекту, и сделаем несколько простых примеров 


Полный курс доступен после регистрации и оплаты. Стоимость курса 450 руб. Зарегистрироваться

При возникновении каких-либо вопросов, пишите на startofandroid на gmail.com


 

Урок 2. Дополнительные возможности.
Во втором уроке рассмотрим некоторые дополнительные возможности: Lazy, Provider, Named, Qualifier, Intoset, ElementsIntoSet, IntoMap, Inject.

 

Урок 3. SubComponent и Scope.
В третьем уроке вы узнаете, что такое SubComponent и как задается время жизни объектов с помощью Scope.

 

Урок 4. Produced.
В четвертом уроке разберем асинхронные механизмы Dagger: ProductionComponent, ProducerModule, Produces, Producer. А также разберем, как с помощью Produced обрабатывать ошибки.

 


Language

Система Orphus

Поддержка проекта

Яндекс
410011180491924

WebMoney
R248743991365
Z551306702056

ePayService
D434155

PayPal

Сайт в соц. сетях