2. Unowned: слабая ссылка, которая не увеличивает счётчик ссылок, но предполагается, что объект всегда существует в памяти.
3. Если объект с unowned ссылкой удалён, обращение к нему приведёт к крашу программы.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Anonymous Quiz
19%
В определении функций
13%
В определении класса
53%
В расширениях и дженериках
15%
В инструкциях if
Anonymous Quiz
31%
Использование Any
4%
Применение union
35%
Создание enum с ассоциированными значениями
30%
Использование дженериков с ограничениями
1. Application Context: существует в течение всего времени работы приложения, привязан к процессу приложения.
2. Activity Context: привязан к жизненному циклу конкретной активности и может быть уничтожен при её завершении.
3. Для длительных задач и сервисов используется Application Context, а для UI-операций — Activity Context.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
Anonymous Quiz
29%
Использование JSONSerialization
45%
Применение Codable
21%
Использование JSONEncoder
5%
Применение Serializable
Anonymous Quiz
45%
asyncMap
13%
mapAsync
12%
forEachAsync
30%
asyncSequence
2. Сложность отладки: некорректная передача контекста может привести к скрытым багам.
3. Проблемы с производительностью: использование Activity Context вместо Application Context может создать избыточные ресурсы.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
Anonymous Quiz
30%
removeAll(where:)
20%
filter
45%
remove(at:)
5%
Прямое удаление в for-loop
Anonymous Quiz
86%
Использование deinit
7%
Применение willSet
3%
Использование finalize
5%
Применение beforeDestroy
2. Включает выделение памяти и назначение значений свойствам (вручную или по умолчанию).
3. В Kotlin инициализация может выполняться через первичный конструктор, блоки init или вторичные конструкторы.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
Anonymous Quiz
29%
Скрытие реализации типа данных
13%
Инкапсуляция внутренних деталей класса
49%
Сокрытие конкретных типов возвращаемых значений функций
9%
Защита данных от изменений во время выполнения
Anonymous Quiz
5%
performAfter
91%
DispatchQueue.asyncAfter
5%
Timer.scheduledTimer
0%
runLater
2. Однако это может привести к утечкам памяти, особенно если контекст связан с долгоживущими объектами (например, Application Context).
3. Плохо спроектированный код с контекстами может усложнить отладку и поддержку.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
Anonymous Quiz
32%
Использование init в протоколе
57%
Применение required init
6%
Использование construct
5%
Применение protocol init
Anonymous Quiz
54%
AsyncResult
18%
Future
21%
Promise
7%
Deferred
Процесс выделения (allocation) связан с резервированием памяти для хранения объектов или данных в программе. В зависимости от типа памяти выделение может происходить в куче (heap) или стеке (stack). Куча используется для объектов с длительным сроком жизни, а стек — для временных данных, таких как локальные переменные. В языках с автоматическим управлением памятью, например, в Swift или Java, выделение и освобождение памяти обрабатываются системой.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
Anonymous Quiz
77%
Использование условных расширений с where
7%
Применение обобщенных расширений
7%
Использование динамических расширений
8%
Применение строгих расширений
Anonymous Quiz
7%
Singleton
77%
Dependency Injection
9%
Factory
6%
Builder
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯4💊3
Anonymous Quiz
34%
Использование throws
37%
Применение Result типа
9%
Использование Error параметра
20%
Применение try блока