КР
> We have to use lateinit var
А я предпочитаю свойства с кастомным геттером.
> We can’t pass different implementations of the UserRepository.
О да, решением именно этой проблемы я занимался во Flawless.
> А я предпочитаю свойства с кастомным геттером
Как круто ты завуалировал "а я предпочитаю не использовать lateinit var".😄