Conversation
makzimi
left a comment
There was a problem hiding this comment.
В целом всё ок, работа выполнена. Но прошу обратить внимание на коммент. На курсовом лучше сделать примерно как я описал.
| @FragmentScope | ||
| @Component( | ||
| modules = [ProducerFragmentModule::class], | ||
| dependencies = [MainActivityComponent::class, ApplicationComponent::class] | ||
| ) | ||
| interface ProducerFragmentComponent { | ||
|
|
||
| @Component.Factory | ||
| interface Factory { | ||
| fun build( | ||
| @BindsInstance | ||
| contextActivity: Context, | ||
| appComponent: ApplicationComponent, | ||
| mainActivityComponent: MainActivityComponent, | ||
| ): ProducerFragmentComponent | ||
| } |
There was a problem hiding this comment.
В целом так сделать можно и оно будет работать.
Но чаще делают так:
Для ProducerFragmentComponent делают
interface ProducerFragmentComponentDependencies
Который определяет просто методы или val что нужно для ProducerFragmentComponent.
И потом, кто-то, реализует этот компонент. Его может реализовать или MainActivityComponent, или это будет прямо новый отдельный класс, который создаст MainActivityComponent внутри себя.
Если будете использовать даггер на курсовом проекте, то лучше именно так сделать. Если будут вопросы - можем на консультациях обсудить это.
No description provided.