본문
170707(금) - android-architecture-todo-mvp-dagger
Mobile/DI 2017. 7. 7. 14:21
android-architecture-todo-mvp-dagger
/** * This is a Dagger module. We use this to pass in the View dependency to the * {@link TasksPresenter}. */ @Module public class TasksPresenterModule { private final TasksContract.View mView; public TasksPresenterModule(TasksContract.View view) { mView = view; } @Provides TasksContract.View provideTasksContractView() { return mView; } }
@Inject TasksPresenter mTasksPresenter;
// Create the presenter
DaggerTasksComponent.builder()
.tasksRepositoryComponent(((ToDoApplication) getApplication()).getTasksRepositoryComponent())
.tasksPresenterModule(new TasksPresenterModule(tasksFragment)).build()
.inject(this);
단지 Contract.View 가 presenter를 가지고 있다는것만으로도 dagger2가 알아서 TaskPresenter를 찾아 Injection 해준다.
편리하긴 하나, 이런식으로 쓰는것이 유지보수하는데에 도움이 될 지는 모르겠다.
(Contract.View의 BaseView가 BaseView<Presenter> 여서 그런건지 아닌지는 알아봐야 할 것 같다.)
'Mobile > DI' 카테고리의 다른 글
170713(목) - Kotlin & Dagger2 crash (0) | 2017.07.13 |
---|---|
170712(수) - Dependency Injection with Dagger2 (0) | 2017.07.12 |
170609(금) - DI with Dagger2 (0) | 2017.06.09 |
170609(금) - DI with Dagger2 (0) | 2017.06.09 |
170609 (금) - DI with Dagger2 (0) | 2017.06.09 |
댓글