Anonymous Quiz
    6%
    Использовать mutableListOf()
      
    5%
    Использовать arrayListOf()
      
    84%
    Использовать listOf()
      
    4%
    Использовать linkedListOf()
      
    - Жестовое управление.
- Поддержка ML Kit и нейросетевых API.
- Adaptive Battery и Adaptive Brightness.
- App Actions и предиктивные предложения.
- Поддержка notch-экранов (Display Cutout).
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥1
  Anonymous Quiz
    18%
    Random
      
    38%
    Math.random()
      
    41%
    SecureRandom
      
    3%
    RandomGenerator
      
    Anonymous Quiz
    86%
    fun myFunction(vararg args: Int)
      
    6%
    fun myFunction(args...: Int)
      
    5%
    fun myFunction(args: Array)
      
    3%
    fun myFunction(*args: Int)
      
    Да, технически можно, но не рекомендуется. Handler сам по себе не предназначен для сетевых операций — он просто ставит задачи в очередь выбранного потока. Чтобы делать запрос в сеть:
- Нужно создать HandlerThread и использовать Handler, привязанный к нему.
- Но лучше использовать Coroutines, RxJava или OkHttp с колбэками, так как они дают гораздо более чистый и безопасный подход.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥1
  Anonymous Quiz
    35%
    Использовать WeakHashMap
      
    33%
    Применять SoftReference для хранения элементов
      
    22%
    Очищать коллекцию методом clear()
      
    10%
    Использовать ключевое слово transient для элементов коллекции
      
    Anonymous Quiz
    9%
    private, protected, public
      
    85%
    internal, private, protected, public
      
    3%
    internal, public
      
    4%
    private, public
      
    Она разделяет логику на независимые уровни: домен, данные, представление. Это делает код легко тестируемым, масштабируемым и гибким для изменений без каскадных изменений в других слоях.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥3💊1
  Anonymous Quiz
    7%
    4
      
    91%
    5
      
    2%
    6
      
    1%
    7
      
    Anonymous Quiz
    44%
    Использовать MainScope().launch { try { ... } catch (e: Exception) { ... } }
      
    33%
    Использовать withContext(Dispatchers.Main) { ... }
      
    14%
    Использовать GlobalScope.launch(Dispatchers.Main) { ... }
      
    9%
    Использовать runBlocking { ... }
      
    – Частые GC-сборки,
– UI-операции в главном потоке,
– Утечки памяти,
– Избыточные redraw,
– Сложные layout-структуры,
– Постоянные обращения к диску или сети без кеша.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥3
  Anonymous Quiz
    15%
    Использовать наследование для расширения классов.
      
    29%
    Применять функции расширения для добавления новых методов.
      
    18%
    Использовать классы-оболочки с внедрением зависимостей через конструктор.
      
    38%
    Все перечисленные методы подходят.
      
    💊1
  Anonymous Quiz
    16%
    С помощью наследования
      
    9%
    Используя паттерн декоратор
      
    72%
    Создание функции расширения
      
    3%
    Прямое изменение исходного класса
      
    Чистая архитектура, модульность, покрытие юнит-тестами, изоляция бизнес-логики, внедрение зависимостей, а также использование моков и интерфейсов — всё это упрощает поддержку, тестирование и масштабирование. Также помогает документация и CI/CD процессы.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍1🔥1
  Anonymous Quiz
    69%
    Использовать private set
      
    12%
    Использовать internal set
      
    13%
    Использовать protected set
      
    6%
    Использовать public set
      
    Anonymous Quiz
    58%
    channel
      
    21%
    single
      
    3%
    broadcast
      
    19%
    flow
      
    Да, есть.
- В launch {} ошибка автоматически передается вверх и может быть обработана CoroutineExceptionHandler.
- В async {} ошибки НЕ передаются автоматически, они остаются внутри Deferred<T>.
- Чтобы поймать ошибку в async {}, нужно вызвать await() внутри try-catch.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥1
  Anonymous Quiz
    56%
    [[1, 2, 3], [3, 4, 5], [5, 6, 7], [7, 8, 9], [9, 10]]
      
    16%
    [[1, 2, 3], [2, 3, 4], [3, 4, 5], [4, 5, 6], [5, 6, 7]]
      
    16%
    [[1, 2, 3], [2, 3, 4], [3, 4, 5], [4, 5, 6], [5, 6, 7], [6, 7, 8], [7, 8, 9], [8, 9, 10]]
      
    12%
    [[1, 2], [3, 4], [5, 6], [7, 8], [9, 10]]
      
    Anonymous Quiz
    19%
    Ошибка компиляции
      
    1%
    Ошибка выполнения
      
    10%
    Параметр принимает значение null
      
    70%
    Используется значение по умолчанию
      
    💊2
  Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥1
  Anonymous Quiz
    20%
    Объявить класс как sealed
      
    70%
    Использовать модификатор final
      
    6%
    Объявить все методы как private
      
    4%
    Скрыть конструктор класса
      
    💊4