Подборка объединяет вопросы, отмеченные на этапах интервью в GrowFood. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: mobile, android, rxjava.
В контексте Dependency Injection (DI) в Android (например, с Dagger или Hilt) аннотации @Provides и @Binds используются для указания, как создавать зависимости, но отличаются по способу и применению:
В проектах на Android я использовал многопоточность для выполнения длительных операций вне основного UI-потока, чтобы не блокировать интерфейс пользователя.
В RxJava типы Maybe и Single используются для работы с потоками, которые могут выдавать ограниченное количество элементов, но они отличаются по поведению:
Для выполнения сервисов в Android обычно используется отдельный поток (background thread), чтобы не блокировать главный (UI) поток. Чаще всего применяют такие подходы:
Транзитивность — это свойство бинарного отношения R на множестве, которое означает следующее: если элемент A связан с элементом B, а элемент B связан с элементом C, то элемент A обязательно связан с элементом C.