Чем отличаются типы Maybe и Single в RxJava и в каких сценариях их используют?
В RxJava типы Maybe и Single используются для работы с потоками, которые могут выдавать ограниченное количество элементов, но они отличаются по поведению:
Читать ответПодготовка к интервью
978 вопросов с собеседований в Яндекс
Что проверяют на интервью
Подборка объединяет вопросы, отмеченные на этапах интервью в Яндекс. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: mobile, backend, database.
Каталог
В RxJava типы Maybe и Single используются для работы с потоками, которые могут выдавать ограниченное количество элементов, но они отличаются по поведению:
Читать ответВ Android существуют несколько основных типов Intent, которые используются для разных целей:
Читать ответDispatchers.Unconfined в Kotlin-корутинах — это диспетчер, который не привязан к конкретному потоку.
Читать ответDagger — компиляционно-временный фреймворк для инъекции зависимостей, основанный на аннотациях и кодогенерации. Dagger генерирует код, который выполняет инъекцию зависимостей во время компиляции.
Читать ответМножество (Set) — это коллекция, которая хранит уникальные элементы, то есть не допускает дубликатов. Основные свойства и принципы работы множества:
Читать ответПринцип работы:
Читать ответВ Kotlin дата-класс автоматически генерирует метод hashCode(), который вычисляет хеш-код на основе всех свойств, объявленных в первичном конструкторе.
Читать ответВ чистой архитектуре слои разделены по ответственности и взаимодействуют строго через определённые интерфейсы, что обеспечивает слабую связанность и удобство тестирования.
Читать ответОсновное отличие между Observable и Flowable в реактивном программировании заключается в управлении давлением (backpressure).
Читать ответВ Android для обработки отсутствующих данных или случаев часто используется паттерн Optional (например, класс Optional в Java или Nullable типы в Kotlin).
Читать ответMVI (Model-View-Intent) — это архитектурный паттерн, используемый в разработке приложений, особенно на Android, для управления состоянием и взаимодействием с UI.
Читать ответКомпонента Looper в Android отвечает за цикл обработки сообщений (MessageQueue) в потоке. Она работает следующим образом:
Читать ответ