Kotlin | Тесты
1.54K subscribers
24 photos
336 links
Cайт easyoffer.ru
Реклама @easyoffer_adv
ВП @easyoffer_vp

Вопросы собесов t.me/+OOb6zFa_-Oo3NjZi
Задачи t.me/+CVnW0MJk6xZjZDc6
Вакансии t.me/+KuGNaHeKkQg1NzAy
Download Telegram
🤔 В Kotlin, как реализовать структурное сравнение двух объектов, чтобы их можно было сравнивать по содержимому, а не по ссылкам?
Anonymous Quiz
45%
Переопределить метод equals()
15%
Использовать ===
38%
Применить ==
2%
Переопределить метод hashCode()
💊10🤯8👀1
🤔 Стратегии бранчинга. Их плюсы и минусы.

1. Git Flow: отлично подходит для сложных проектов с чётким управлением версиями, но может быть избыточен для небольших проектов.
2. Feature Branching: позволяет изолировать работу над фичами, упрощая код-ревью, но усложняет синхронизацию.
3. Trunk-Based Development: быстрый и простой подход, особенно для Agile-команд, но может создавать конфликты из-за частого коммита в основную ветку.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
🤔 В Kotlin, как правильно создать несколько вторичных конструкторов в классе?
Anonymous Quiz
87%
Использовать ключевое слово constructor для каждого вторичного конструктора.
5%
Использовать разные имена для каждого конструктора.
4%
Использовать аннотацию @Overload для различения конструкторов.
5%
Определить только один первичный конструктор и использовать init блоки.
🤔 В Kotlin, как правильно реализовать паттерн "Стратегия", используя функции высшего порядка?
Anonymous Quiz
41%
Определить интерфейс с методом стратегии и классы, реализующие этот интерфейс.
34%
Использовать класс с свойством типа функции и менять это свойство в зависимости от стратегии.
13%
Применить аннотацию @Strategy для функций стратегии.
12%
Создать множество функций, которые вызываются в зависимости от условий.
🤔 Как оценивать резонность использования Compose?

1. Сложность интерфейса: Compose подходит для динамически изменяющихся интерфейсов.
2. Совместимость: если приложение требует поддержки старых версий Android, может быть нецелесообразным.
3. Производительность: оцениваю, насколько Compose улучшит скорость разработки и производительность UI.
4. Обучение команды: важен уровень подготовки команды к работе с Compose, так как переход требует времени и ресурсов.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
🤔 Как в Kotlin можно создать лениво инициализированное свойство, которое потокобезопасно и инициализируется только при первом обращении?
Anonymous Quiz
23%
Использовать ключевое слово lateinit
72%
Использовать делегат lazy
4%
Применить модификатор volatile
1%
Использовать функцию synchronized
🤔 Как в Kotlin можно определить класс, который можно наследовать только в пределах одного модуля?
Anonymous Quiz
55%
Использовать модификатор internal с open
29%
Использовать sealed class
3%
Применить модификатор private с open
13%
Использовать protected open class
💊4
🤔 Какие этапы проводятся для отрисовки текста?

1. Измерение: определение размеров текста с учётом шрифта и стиля (используя Paint.measureText или StaticLayout).
2. Размещение: расчёт позиции текста на экране.
3. Рендеринг: отрисовка текста на Canvas через методы drawText или StaticLayout.draw.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥1
🤔 В Kotlin, как реализовать управление доступом к методу так, чтобы он был доступен только для классов в определенном файле?
Anonymous Quiz
49%
Использовать модификатор private и расположить все классы в одном файле.
45%
Использовать модификатор internal и объединить все классы в одном пакете.
4%
Использовать модификатор fileprivate.
💊3
🤔 В Kotlin, как можно обеспечить, чтобы переменная была доступна только в рамках текущего модуля и инициализирована только один раз?
Anonymous Quiz
16%
Использовать lateinit var с модификатором internal
44%
Использовать internal val и инициализировать при объявлении
17%
Использовать companion object с internal val
24%
Использовать object с модификатором internal
🤔1
🤔 Как можно писать RecyclerView, чтобы он кэшировал наперёд?

1. Использовать setItemViewCacheSize для кэширования определённого количества элементов.
2. Включить предзагрузку данных с помощью RecyclerView.OnScrollListener.
3. Реализовать Prefetching через LinearLayoutManager или RecyclerView.LayoutManager.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8
🤔 Как в Kotlin можно реализовать условную логику внутри лямбды, передаваемой в функцию высшего порядка?
Anonymous Quiz
16%
Использовать if/else внутри лямбды
15%
Использовать when внутри лямбды
4%
Использовать try/catch внутри лямбды
64%
Все вышеперечисленные
💊6
🤔 В Kotlin, как обеспечить безопасное выполнение блока кода, который может выбросить исключение, и вернуть значение по умолчанию в случае ошибки?
Anonymous Quiz
75%
Использовать try/catch с возвратом значения в catch
13%
Применить getOrElse функцию
4%
Использовать safeCall оператор
8%
Применить defaultWhenThrow метод
🤔 Как реализовать ссылку-предложение открыть приложение на сайте?

1. Настроить deep link в файле манифеста через <intent-filter>.
2. Указать схему (например, https) и хост (например,
example.com).
3. При переходе с сайта приложение будет предложено для открытия ссылки.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍1
🤔 Как в Kotlin реализовать функцию, которая принимает массив функций и последовательно применяет их к начальному значению?
Anonymous Quiz
28%
Использовать fold начиная с начального значения
22%
Применить apply к каждой функции в массиве
37%
Использовать forEach и последовательно вызывать каждую функцию
12%
Применить reduce на массиве функций
🤔 Какие особенности отличия deep link от app link?

- Deep link: работает через схему URI (например, myapp://), требует настройки <intent-filter>.
- App link: использует HTTP/HTTPS ссылки и требует подтверждения владения доменом через файл assetlinks.json.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍3🤔1
🤔 В Kotlin, как обеспечить выполнение кода с интервалом в одну секунду, не блокируя основной поток программы?
Anonymous Quiz
9%
Использовать Thread.sleep(1000) в цикле
3%
Применить timer с задержкой и интервалом
83%
Использовать корутины с delay(1000) в цикле
4%
Использовать ScheduledExecutorService
🤔 В Kotlin, как можно создать экземпляр класса, который использует generic типы, и обеспечить, чтобы этот тип был ограничен только классами, реализующими определенный интерфейс?
Anonymous Quiz
59%
class MyClass<T: MyInterface>
32%
class MyClass<T> where T : MyInterface
8%
class MyClass<T> implements MyInterface
2%
class MyClass<T> extends MyInterface
🤔 Какой архитектурный паттерн реализуется благодаря ViewModel?

ViewModel реализует паттерн MVVM (Model-View-ViewModel). Этот паттерн разделяет представление (UI) и логику обработки данных, обеспечивая независимость между View и Model. ViewModel служит посредником, управляя состоянием и предоставляя данные View, сохраняя их при поворотах экрана или других изменениях конфигурации.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
💊2🔥1