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

Вопросы собесов t.me/+wtkjBoN6OI5hNGEy
Задачи t.me/+JQkI4zSOEXtkYzg6
Вакансии t.me/+3o9-Ytdiv_E5OGIy
Download Telegram
🤔 Как реализовать механизм обратного вызова (callback), который может быть настроен на выполнение только при успешном завершении операции в Swift?
Anonymous Quiz
33%
Использование функций обратного вызова
16%
Применение делегатов
12%
Создание NotificationCenter событий
39%
Использование комплекса условий в блоке завершения
🤔 Что такое deadlock?

Deadlock — это ситуация, при которой два или более процесса или потока блокируют друг друга, ожидая освобождения ресурсов, которые каждый из них удерживает. Это приводит к остановке выполнения, так как никто не может продолжить работу.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥1
🤔 Какой метод нужно использовать для вставки нового элемента в начало массива в Swift?
Anonymous Quiz
8%
prepend(_:)
22%
append(_:)
68%
insert(_:at:)
2%
push(_:)
🤔 Какой синтаксис используется для объявления замыкания, принимающего два параметра и возвращающего значение в Swift?
Anonymous Quiz
28%
{(param1: Type1, param2: Type2) -> ReturnType in ...}
28%
(param1: Type1, param2: Type2) -> ReturnType {...}
15%
{param1: Type1, param2: Type2 in ReturnType ...}
29%
(param1: Type1, param2: Type2) -> ReturnType {in ...}
🤔 Какие проблемы можно получить, если оставить контекст?

1. Утечки памяти: если объект с контекстом удерживается после его жизненного цикла.
2. Сложность отладки: некорректная передача контекста может привести к скрытым багам.
3. Проблемы с производительностью: использование Activity Context вместо Application Context может создать избыточные ресурсы.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Какое ключевое слово используется для создания ассоциативных значений для каждого случая перечисления (enum) в Swift?
Anonymous Quiz
65%
case
26%
associated
5%
value
4%
enum
🤔 Как можно создать любую переменную и записать туда любой тип данных?

В Swift — через тип Any. Пример: var anything: Any = "string", потом anything = 42. Однако, чтобы использовать значение, нужно приведение типа (as?, as!).


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
🤔 Как создать производный класс в Swift?
Anonymous Quiz
84%
class Derived: Base {}
5%
class Derived inherits Base {}
1%
class Derived <- Base {}
11%
subclass Derived: Base {}
🤔 Что такое дженерики?

Дженерики — это функциональность в Swift и других языках программирования, позволяющая создавать гибкие, многократно используемые функции и типы данных, которые могут работать с любым типом. Дженерики улучшают код за счет уменьшения повторений и увеличения ясности, типобезопасности и переиспользуемости кода.?

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3
🤔 Каким способом можно в Swift улучшить читаемость сложных условных операторов?
Anonymous Quiz
65%
Использование switch
3%
Применение многоуровневых if
13%
Использование pattern matching
19%
Применение early exit с guard
🤔7💊7
🤔 Какой концепцией в Swift описывается свойство или метод, который можно использовать без создания экземпляра класса?
Anonymous Quiz
3%
Инкапсуляция
69%
Статический
16%
Полиморфизм
12%
Наследование
🤔 Как можно сделать кэширование только своими инструментами?

Можно реализовать кэш:
- Через обычный словарь или мапу (ключ — запрос, значение — ответ).
- Устанавливать ограничение по времени жизни (например, TTL) и вручную очищать старые значения.
- Добавлять механизм проверки валидности (по дате, флагу, внешнему событию).
- Использовать структуры с ограничением размера, удаляя наименее используемые элементы (например, LRU).


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как в Swift можно отменить выполнение отложенной задачи, запущенной с помощью DispatchQueue?
Anonymous Quiz
65%
cancel()
10%
suspend()
12%
invalidate()
13%
stop()
🤔 Как запустить поток?

Запустить поток можно разными способами:
- Использовать асинхронную задачу или очередь, чтобы выполнить код в фоне.
- В многопоточной среде — создать новый поток, задачу или использовать пул потоков.
- В Swift это можно сделать с помощью DispatchQueue, Task или OperationQueue.
Важно помнить, что всё, что связано с UI, должно выполняться в основном потоке.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🔥1
🤔 Как называется инструмент, используемый для написания и тестирования кода на Swift в реальном времени?
Anonymous Quiz
55%
Xcode
42%
Swift Playgrounds
1%
Visual Studio Code
2%
AppCode
🤔5
🤔 Какое ключевое слово используется для создания констант в Swift?
Anonymous Quiz
2%
var
95%
let
3%
const
0%
static
💊3🤔2👍1
🤔 Какая разница между копированием массива и структуры?

Массив в Swift реализован как тип значения с Copy-on-Write, что означает, что копия создаётся только при изменении.
Структура всегда копируется целиком при передаче, если в неё не вложены ссылочные типы. Это может быть дороже по памяти при больших данных.


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