Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
Anonymous Quiz
26%
С помощью класса Observable
19%
Используя delegate свойств
44%
Путем реализации интерфейса Observer и класса Observable
11%
Создание пользовательских интерфейсов и использование лямбд
💊10🤔2
Anonymous Quiz
32%
Использовать ReentrantLock
42%
Использовать volatile
9%
Использовать AtomicInteger
17%
Использовать Semaphore
Если используется делегирование интерфейса, то необходимо переопределить функции этого интерфейса. Это может быть getValue, setValue или любые кастомные функции, если используется пользовательский делегат.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👍1
Варианты ответов:
Anonymous Quiz
20%
Array(10, { 0 })
18%
IntArray(10, { 0 })
38%
IntArray(10) { 0 }
24%
List(10) { 0 }
💊9
Anonymous Quiz
25%
lateinit var name: String
18%
lazy val name: String
53%
val name: String by lazy { "Initial" }
4%
var name: String = lazyInit { "Initial" }
Напрямую — нет. Но можно имитировать:
– Через утилитные классы с static методами,
– Через интерфейсы с default-методами (с Java 8).
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
Anonymous Quiz
84%
Использовать map
9%
Применить transform
2%
Использовать convert
5%
Реализовать collect
Anonymous Quiz
26%
Использование volatile модификатора
54%
Применение lazy делегата с модом SYNCHRONIZED
10%
Использование аннотации @ThreadSafe
10%
Реализация через класс ThreadLocal
🤔1
Утечки возникают при забытых подписках. Для их предотвращения используют CompositeDisposable, отслеживают жизненный цикл компонентов и используют библиотеки автоматической отписки. Также важно не передавать Activity/Fragment напрямую в лямбды.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
Anonymous Quiz
19%
[1, 2, 3, 4]
79%
[1, 2, 3]
2%
[4, 5]
1%
[]
Anonymous Quiz
16%
3
75%
5
8%
4
1%
6
💊3
Паттерны решают часто встречающиеся архитектурные задачи. В Android популярны:
- MVVM, MVP, MVC — разделение логики и UI.
- Singleton — для глобального доступа к объекту.
- Factory — для создания объектов.
- Observer — для подписки на события (LiveData, Flow).
- Builder — для пошаговой конфигурации сложных объектов.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🔥1🤔1
Anonymous Quiz
29%
Использование runCatching {}
62%
Оборачивание вызова в try и catch
4%
Применение предикатов для входных данных
5%
Вызов функции внутри блока safeCall {}
💊7🤔2
Anonymous Quiz
74%
24
11%
10
7%
12
8%
16
Эта функция делит коллекцию на два списка: один содержит элементы, соответствующие условию, другой — не соответствующие. Это удобно для фильтрации без потери невалидных элементов.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
Anonymous Quiz
22%
С помощью object с методом создания экземпляра
52%
Использовать companion object с фабричным методом
16%
Использование функций расширения для создания экземпляров
10%
Применить аннотацию @Factory к функции
Anonymous Quiz
33%
volatile
66%
synchronized
0%
final
1%
static
- internal — это уровень доступа для всего модуля.
- Модуль — это обычно компиляционная единица: одна сборка Gradle, Maven или IntelliJ.
- Код с internal не будет виден в других модулях, даже если класс или функция — public.
Полезно для сокрытия реализации между слоями или при использовании многомодульной архитектуры.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
Anonymous Quiz
26%
extend
70%
fun
2%
ext
2%
def
💊7