Dagger 2 Multibindings Illustrated
Dagger 2 имеет множество возможностей, хотя множество разработчиков используют его по простому сценарию: "1 модуль. 1 компонент. @Inject. AppComponent.inject(...)". Но в Dagger есть много интересного функционала. Например, Multibinding, который позволяет вам объединять зависимости одного типа из разных модулей и компонентов в
Set или Map.Когда это может пригодиться? Когда у вас есть обработчики для создания элементов по типу элементов. Это эффективно можно применить для выполнения доставки зависимостей в конструктор
Fragment (поддерживается в androidx.fragment 1.1.0):1. Предоставляете способ создания
Fragment в Dagger модуле2. Из Dagger вы можете получить
Map<Class<Fragment>, Provider<Fragment>>Код получается гибким и хорошо расширяемым. А значит мы и улучшили нашу архитектуру
В статье вы найдете руководство как использовать эту возможность библиотеки и делать архитектуру ваших приложений более гибкой.