Swift | Тесты
1.23K subscribers
25 photos
394 links
Cайт easyoffer.ru
Реклама @easyoffer_adv
ВП @easyoffer_vp

Вопросы собесов t.me/+wtkjBoN6OI5hNGEy
Задачи t.me/+JQkI4zSOEXtkYzg6
Вакансии t.me/+3o9-Ytdiv_E5OGIy
Download Telegram
🤔 Какой тип у Operation по умолчанию?

По умолчанию Operation — это одноразовая, неблокирующая, однопоточная операция, реализуемая через BlockOperation или кастомный подкласс Operation. Её тип — абстрактный базовый класс, от которого нужно наследоваться или использовать конкретные реализации (например, BlockOperation). По умолчанию операция выполняется синхронно, пока не будет помещена в OperationQueue, где она становится асинхронной.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Что добавляют опционалы?

Опционалы позволяют безопасно выражать возможность отсутствия значения (nil) на уровне типов. Это предотвращает случайные ошибки и делает код более предсказуемым.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как в Swift реализовать стратегию ленивой инициализации для глобальных ресурсов, требующих сложной настройки?
Anonymous Quiz
52%
Использование lazy var
20%
Применение singleton с ленивой инициализацией
13%
Создание static фабричного метода с кэшированием
16%
Определение глобальной lazy функции
🤔 Как писать код так, чтобы с точки зрения динамической диспетчеризации код работал быстро?

Избегать dynamic,
@objc, использования Any и протоколов с @objc. Использовать final классы, struct, enum — они компилируются с статическим вызовом и быстрее обрабатываются.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Какой механизм в Swift позволяет обработать несколько асинхронных задач и дождаться их завершения?
Anonymous Quiz
73%
DispatchGroup
20%
AsyncAwait
7%
OperationQueue
0%
CompletionHandler
🤔 Что нужно сделать, чтобы вызвать жизненный цикл view-контроллера?

Жизненный цикл UIViewController запускается:
- При инициализации и отображении контроллера (вручную или через навигацию).
- Основные методы:
- viewDidLoad()
- viewWillAppear()
- viewDidAppear()
- viewWillDisappear()
- viewDidDisappear()
Чтобы вызвать жизненный цикл вручную:
- Представить контроллер:
- Или встроить в навигацию:


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Какое ключевое слово используется в Swift для принудительного завершения выполнения цикла или оператора switch?
Anonymous Quiz
84%
break
3%
continue
0%
exit
13%
return
🤔 Как в Swift определить кастомный оператор, который будет иметь такой же приоритет, как оператор сложения?
Anonymous Quiz
62%
infix operator +++: AdditionPrecedence
26%
infix operator +++: DefaultPrecedence
8%
infix operator +++: NormalPrecedence
5%
infix operator +++: StandardPrecedence
🤔 Есть ли в Swift множественное наследование?

Нет, классы в Swift не могут наследоваться от более чем одного суперкласса. Однако Swift поддерживает множественное наследование поведения через соответствие нескольким протоколам.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
🤔 Как в Swift создать тип данных, который поддерживает алгебраические операции и интеграцию с существующими математическими функциями?
Anonymous Quiz
65%
Реализация протокола Numeric
15%
Использование типа NSDecimalNumber
2%
Применение typealias для Double
17%
Расширение существующего типа через extension
🤔 Что такое Witness Table?

Это механизм динамического диспетчинга в Swift, используемый для работы с протоколами.
- Если структура или класс реализуют протокол, Swift создает Witness Table, хранящую указатели на методы.
- Это позволяет динамически вызывать методы, объявленные в протоколе, даже если тип не известен во время компиляции.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как называется механизм в Swift, который позволяет объектам автоматически отслеживать изменения и уведомлять заинтересованные стороны?
Anonymous Quiz
60%
Key-Value Observing (KVO)
35%
NotificationCenter
5%
Delegation
0%
Combine