DaggerSkills icon indicating copy to clipboard operation
DaggerSkills copied to clipboard

Sample repo for refactoring Dagger implementation

Video

Youtube: Up your Dagger skills (live stream record is the last)

Variations

This project hosts each skill in separate repository branches.

Sample Description
Bad Implementation Here you can see the sample of bad implementation (Fat component)
Remove duplicate provider points In Bad Implementation branch we have some duplicate provide point, that here they are fixed, Plus some tips
Dependency on abstract class Base on the DIP principle
Remove scopes Shows the use-case of scopes and remove useless scopes
Leading to one scope Lead to one scope
Binding Use-case of Binds annotations
Constructor module Remove the constructor of module by BindsInstance annotation
Factory Use-case of component factory
provide statically Static provide functions in kotlin
Lazy-Provider Optimize heavy objects with Lazy and Provider
AppComponent access Remove static appComponent access
Break down appComponent Break down appComponent to multiple components
Multiple component dependency How to depend on multiple components