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

Вопросы собесов t.iss.one/+wtkjBoN6OI5hNGEy
Задачи t.iss.one/+JQkI4zSOEXtkYzg6
Вакансии t.iss.one/+3o9-Ytdiv_E5OGIy
Download Telegram
🤔 Почему порядок ключей будет сохраняться между мутациями в словаре?

Начиная с Swift 4, стандартный Dictionary сохраняет порядок вставки ключей. Даже при изменении значений или добавлении новых элементов порядок сохраняется, пока явным образом не удаляются ключи или не происходит массовая перераспределённая перестройка.
Это стало возможным благодаря обновлённой реализации хеш-таблицы внутри Dictionary.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как обработать в Swift исключения, возникающие при работе с внешними библиотеками, которые не используют систему Error Handling Swift?
Anonymous Quiz
69%
Оборачивание вызовов библиотек в Swift try-catch блоки
3%
Реализация обработчиков ошибок в каждом методе
15%
Преобразование исключений в ошибки через обертки
💊1
🤔 Какой метод позволяет выполнить код асинхронно на главной очереди в Swift?
Anonymous Quiz
97%
DispatchQueue.main.async {}
0%
Async.runOnMain {}
🤔 dataTask выполняет синхронно или асинхронно задачу?

URLSession.dataTask — это асинхронный вызов. Он немедленно возвращает объект задачи, но выполнение запроса происходит в фоне. Завершение происходит через callback (closure).


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Каким образом можно в Swift реализовать динамическую диспетчеризацию без использования наследования?
Anonymous Quiz
6%
Использование позднего связывания
68%
Применение протоколов с расширениями
16%
Использование классовых функций
10%
Замена функций на время выполнения
🤔 Как в Swift встроить проверку во время разработки, чтобы убедиться, что код не переходит в продакшн?
Anonymous Quiz
76%
Применение #debug
3%
Использование #error
7%
Применение #warning
🤔 Что такое Core Data?

Core Data — это высокоуровневый фреймворк Apple для управления графами объектов и хранения данных. Он предоставляет разработчику:
- удобное описание моделей;
- автоматическую синхронизацию данных;
- механизмы сохранения в SQLite (или других форматах);
- поддержку undo, lazy loading, валидации и интеграции с UI.
Core Data особенно полезна в приложениях с богатой моделью данных, связями и сложной логикой.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Вопрос: Как в Swift определить перечисление, которое связано с определенными строковыми значениями?
Anonymous Quiz
79%
enum Name: String { case A = "Apple", B = "Banana" }
14%
enum Name { case A = "Apple", case B = "Banana" }
1%
enum Name(String) { case A = "Apple", case B = "Banana" }
6%
type enum Name: String { case A = "Apple", case B = "Banana" }
💊3
🤔 Что такое поведенческий паттерн?

Это паттерн, описывающий взаимодействие между объектами, как они передают управление и данные. Поведенческие паттерны помогают организовать структуру общения и избегать жёсткой связанности. Примеры: Observer, Strategy, Command, State, Mediator.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как в Swift можно определить, поддерживает ли класс или структура определенный протокол?
Anonymous Quiz
33%
Использование is
18%
Применение conforms to
12%
Использование type(of:)
37%
Применение as?
💊11
🤔 Как обработать ошибки в асинхронной функции Swift, возвращающей результаты через Future или Promise?
Anonymous Quiz
39%
Использование catch
29%
Применение try
17%
Использование handleError
15%
Применение await
💊7
🤔 Кто будет управлять нажатием: вложенная коллекция или родительская?

По умолчанию вложенная коллекция перехватывает события. Однако управление можно перенастроить: отключить isUserInteractionEnabled у ячеек, передать события вверх, изменить приоритеты gesture recognizers.


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

Чтобы увеличить зону клика UIButton:
1. Создать кастомную кнопку и переопределить point(inside:with:)
2. Либо обернуть кнопку в UIView с большим frame, но маленькой кнопкой внутри.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
🤔 Какой протокол в Swift используется для сравнения объектов на равенство?
Anonymous Quiz
79%
Equatable
14%
Comparable
3%
Matchable
4%
Equality
🤔 Как в Swift обеспечивается безопасность выполнения кода при работе с указателями?
Anonymous Quiz
30%
Автоматическая сборка мусора
11%
Ручное управление памятью
28%
Использование безопасных оберток
30%
Применение строгой типизации
🤔 Как сделать так, чтобы класс больше не наследовался?

Нужно использовать модификатор final (в Swift, Kotlin, Java). Это запрещает создание подклассов и гарантирует, что поведение класса не будет переопределено.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
🤔 Как обеспечить сохранение состояния пользовательского интерфейса приложения на Swift при переконфигурации устройства?
Anonymous Quiz
80%
С помощью сохранения состояния в UserDefaults
8%
Используя архитектурный паттерн MVVM
8%
Через сериализацию объекта UIView
5%
Используя стек UINavigationController
💊14