Anonymous Quiz
32%
httpClient.get()
11%
httpRequest.send()
36%
httpClient.request()
22%
httpRequest.execute()
MV* паттерны — это архитектурные подходы, разделяющие логику приложения на слои:
- MVC (Model-View-Controller): Контроллер управляет моделью и обновляет представление.
- MVP (Model-View-Presenter): Презентер принимает действия от view, взаимодействует с моделью и обновляет UI.
- MVVM (Model-View-ViewModel): ViewModel содержит логику и состояние, а view автоматически подписана на изменения через биндинг.
Цель — отделить UI от логики и улучшить масштабируемость, читаемость и тестируемость.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🔥1
Anonymous Quiz
82%
Использование ленивых коллекций Sequence
5%
Применение немедленной загрузки всех элементов
7%
Хранение всех данных в массиве
7%
Регулярное принудительное вызывание сборщика мусора
Anonymous Quiz
84%
Использовать блок finally
9%
Применить try и catch без finally
1%
Вызвать функцию doFinally()
7%
Завершить блок catch соответствующим кодом
Для верхнеуровневых элементов (файлов, классов) — public.
Для членов класса — также public, если не указано иначе.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
Anonymous Quiz
31%
Использовать fold начиная с начального значения
17%
Применить apply к каждой функции в массиве
31%
Использовать forEach и последовательно вызывать каждую функцию
21%
Применить reduce на массиве функций
🤔1
Anonymous Quiz
32%
checkNotNull
43%
requireNotNull
16%
runNotNull
9%
alsoNotNull
💊2
-
-
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1💊1
Anonymous Quiz
88%
Использование map { it.length }
4%
Применение convert { length }
4%
Вызов list.transform { it.length }
4%
Использование collect { it.length }
Anonymous Quiz
21%
val numbers = 1..10
58%
val numbers = (1..10).toList()
17%
val numbers = listOf(1, 10)
4%
val numbers = Array(10) { i -> i + 1 }
Вариантность бывает:
- In (контравариантность) — объект принимает типы, более общие, чем указанный (Consumer).
- Out (ковариантность) — объект возвращает типы, более специфичные (Producer).
- Без ограничений — используется с * или без ключевого слова, когда точная типизация не важна.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
Anonymous Quiz
75%
Unit
6%
Void
13%
Any
6%
Nothing
Anonymous Quiz
75%
listOf()
16%
mutableListOf()
5%
ArrayList()
3%
LinkedList()
С помощью:
- Mutex — аналог Lock для корутин.
- Channel — для безопасного обмена данными.
- atomic/Volatile — при использовании из kotlinx.atomicfu.
- Использование withContext и Dispatchers для контроля над потоком.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3
Anonymous Quiz
41%
Использовать Double Check Locking
30%
Использовать volatile
13%
Использовать внутренний статический класс
16%
Использовать synchronized
👍1🔥1
Anonymous Quiz
5%
lazyOf
75%
lazy
20%
lateinit
0%
deferred
- Start Service (обычный):
- onCreate()
- onStartCommand()
- onDestroy()
- Bound Service (привязанный):
- onCreate()
- onBind()
- onUnbind()
- onDestroy()
Система может перезапустить сервис, если он был завершён (в зависимости от флага START_STICKY, START_NOT_STICKY и т.п.).
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
Anonymous Quiz
16%
Используя !! после каждого параметра
35%
Не указывая ? после типа параметра
8%
Объявив параметры как NonNull
42%
Все параметры в Kotlin по умолчанию не-null
🤔4💊3
Anonymous Quiz
79%
object : InterfaceName {}
5%
new InterfaceName() {}
14%
class : InterfaceName {}
3%
InterfaceName.create()
💊2
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
Anonymous Quiz
15%
Объявление класса как private
2%
Объявление всех конструкторов класса как private
80%
Объявление класса как final
2%
Использование аннотации @NonInheritable
🔥1