Я начал использовать кинжал для моего приложения kotlin android. Я хочу убедиться, что хранилище будет инициализировано только один раз, поэтому я добавил область @Singleton для хранилища. Достаточно ли этого или есть какие-либо преимущества в дизайне, чтобы сделать некоторые дополнительные шаги простым kotlin, чтобы сделать класс одиночным?
@Module
abstract class RepositoryModule{
@Binds
@Singleton
abstract fun provideRepository(someRepo : SomeRepo): Repository
}
@Singleton
@Component(modules = [
AndroidSupportInjectionModule::class,
ActivityBindingModule::class,
RepositoryModule::class,
])
interface AppComponent : AndroidInjector<MyApplication>
class SomeRepo @Inject constructor (
service : Service ,
anotherService : Service
) : Repository{