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

Вопросы собесов t.me/+wtkjBoN6OI5hNGEy
Задачи t.me/+JQkI4zSOEXtkYzg6
Вакансии t.me/+3o9-Ytdiv_E5OGIy
Download Telegram
@autoclosure позволяет передавать выражение как замыкание, но писать его без фигурных скобок.
Компилятор автоматически оборачивает выражение в замыкание. Используется, например, в функциях вроде assert, чтобы отложить выполнение до нужного момента и сохранить читаемость.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
🤔2
🤔 Какой протокол используется для поддержки сравнения экземпляров типов на равенство?
Anonymous Quiz
18%
Comparable
7%
Hashable
70%
Equatable
5%
Equality
🤔 Как называется процесс улучшения структуры кода без изменения его внешнего поведения в Swift?
Anonymous Quiz
15%
Оптимизация
2%
Деплоймент
81%
Рефакторинг
2%
Профилирование
🤔 Что нужно сделать, чтобы вызвать жизненный цикл view-контроллера?

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


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Какое значение будет у свойства last для пустого массива?
Anonymous Quiz
82%
nil
10%
Пустой массив
2%
0
6%
Последний элемент массива
🤔 Что позволяет реализовать шаблон Observer в Swift для управления зависимостями между объектами?
Anonymous Quiz
11%
Прямая связь между объектами
56%
Применение NotificationCenter
28%
Использование протоколов и делегирования
4%
Связывание через глобальные переменные
💊16
🤔 Какие бывают модификаторы доступа?

В Swift модификаторы доступа включают:
private (доступ только внутри текущего файла или типа),
fileprivate (доступ в пределах файла),
internal (доступ по умолчанию в модуле),
public (доступ в любом модуле),
open (доступ для наследования и изменения вне модуля).


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
🤔 Как в Swift можно автоматически тестировать пользовательский интерфейс приложения?
Anonymous Quiz
79%
Использование XCTest UI
17%
Применение Snapshot tests
2%
Использование Playgrounds
2%
Применение Asynchronous tests
👍1
🤔 Какой механизм используется для управления памятью в Swift, обеспечивающий автоматическое управление временем жизни объектов?
Anonymous Quiz
1%
Garbage Collection
3%
Memory Pool
6%
Reference Counting
90%
Automatic Reference Counting (ARC)
👍1
🤔 Разница между Keychain и UserDefaults?

Keychain — безопасное хранилище для конфиденциальных данных (пароли, токены). UserDefaults — для простых настроек и состояний (темы, флаги), не защищён от внешнего доступа.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
🤔 Всегда ли в замыканиях требуется указывать self?

Да, если захватываешь self внутри замыкания — Swift требует явного self, чтобы избежать непреднамеренного retain cycle и повысить читаемость.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
🤔 Как в Swift реализовать строгую типизацию для JSON данных при их десериализации, минимизируя риск ошибок времени выполнения?
Anonymous Quiz
34%
Использование Codable
28%
Применение JSONSerialization
4%
Использование Type-Safe JSON
33%
Применение Decodable
💊1
🤔 Чему равно значение выражения Optional.none в контексте Optionals в Swift?
Anonymous Quiz
93%
nil
2%
0
3%
Пустая строка
2%
false
🤔 Что известно про две семантики в Swift'е?

Swift поддерживает две семантики:
- Семантика значений — структуры и перечисления, копируются при передаче.
- Семантика ссылок — классы, при передаче копируется ссылка.
Они влияют на поведение данных при передаче между переменными и при работе с памятью.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
💊2
🤔 Какой ключевое слово используется для создания слабо связанных ссылок на объекты в Swift?
Anonymous Quiz
96%
weak
3%
unowned
0%
optional
1%
lazy
🤔 Какая диспетчеризация используется для Extension-ов?

Для методов, добавленных через extension, используется статическая диспетчеризация.
1. Это значит, что компилятор определяет вызов метода на этапе компиляции.
2. Методы из extension не могут быть переопределены или динамически разрешены через Objective-C runtime.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1