Swift | Тесты – Telegram
Swift | Тесты
1.25K subscribers
27 photos
473 links
Cайт easyoffer.ru
Реклама @easyoffer_adv
ВП @easyoffer_vp

Вопросы собесов t.me/+wtkjBoN6OI5hNGEy
Задачи t.me/+JQkI4zSOEXtkYzg6
Вакансии t.me/+3o9-Ytdiv_E5OGIy
Download Telegram
🤔 Как в Swift протестировать код, который зависит от текущего времени, не изменяя системные часы?
Anonymous Quiz
33%
Использование Date()
8%
Применение SystemClock интерфейса
35%
Создание мок объекта для времени
24%
Использование TimeInterval
🤔 Как называется свойство, которое возвращает количество символов в строке?
Anonymous Quiz
21%
length
2%
size
74%
count
3%
capacity
🤔 Каким образом подключая интерфейс мы получаем поведение?

Протокол (интерфейс) описывает поведение, а при подключении к нему класс или структура обязываются реализовать методы, тем самым приобретая определённое поведение. Это форма абстракции и инверсии управления.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Какой метод в Swift гарантирует, что изменения состояния объекта происходят атомарно?
Anonymous Quiz
24%
sync
49%
atomic
11%
barrier
16%
lock
💊3
🤔 Как в Swift оптимизировать производительность цикла обработки большого массива данных?
Anonymous Quiz
9%
Использование for-in
31%
Применение forEach
30%
Использование parallelMap
29%
Применение map
🤔 Чем отличается rebase от merge?

rebase переписывает историю, применяя изменения вашей ветки поверх целевой ветки, создавая линейную историю. merge объединяет две ветки, сохраняя историю обеих, что может привести к дополнительным коммитам при конфликте.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как в Swift эффективно обновить каждый элемент массива без изменения оригинального массива?
Anonymous Quiz
22%
array.forEach { }
12%
array.update { }
7%
array.modify { }
🤔 Каким образом в Swift можно программно изменить поведение метода класса при наследовании без изменения исходного кода?
Anonymous Quiz
21%
Использование method swizzling
6%
Применение subclassing
21%
Создание расширения класса с новой реализацией метода
52%
Оверрайдинг метода в подклассе
🤔 Что такое Docker?

Docker — это инструмент для упаковки приложений и зависимостей в контейнеры. Контейнеры изолированы, воспроизводимы и быстро запускаются, что облегчает разработку, тестирование и развертывание.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
💊2👍1🔥1
🤔 Как можно в Swift динамически изменять выполнение функции на основе внешнего ввода без изменения самой функции?
Anonymous Quiz
23%
При помощи high-order functions
17%
Использование шаблона "Command"
21%
Используя паттерн "Strategy"
40%
Через делегаты и протоколы
💊1
🤔 Как в Swift реализовать класс, который нельзя наследовать?
Anonymous Quiz
90%
final class MyClass {}
4%
sealed class MyClass {}
1%
closed class MyClass {}
5%
static class MyClass {}
🤔 Есть ли event emitter в колбеках?

В чистых колбеках механизма EventEmitter нет, но его можно интегрировать, например, через библиотеку Node.js. EventEmitter используется для обработки событий, позволяя подписываться на них и обрабатывать асинхронный код. Колбеки могут быть связаны с событиями через вызов функций обратного вызова. Это полезно для построения асинхронной архитектуры.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
💊3🔥1
🤔 Как в Swift определить, что функция может бросить ошибку, но не должна обрабатывать её самостоятельно?
Anonymous Quiz
64%
Использование throws
13%
Применение rethrows
5%
Использование throwing
18%
Применение try
💊6
🤔 Как называется тип в Swift, который может содержать значение или nil?
Anonymous Quiz
96%
Optional
2%
Nullable
0%
Variant
2%
Either
🤔 Как вставлять элемент в массив?

Можно добавить элемент в конец (через добавление), вставить по индексу или объединить с другим массивом. Также можно использовать методы для модификации на конкретной позиции.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
🤔 Создание API на Swift, который обрабатывает все входящие запросы через один метод. Какой паттерн использовать для разграничения обработки?
Anonymous Quiz
12%
Command
35%
Chain of Responsibility
12%
Template Method
40%
Adapter
🤔 Что такое layer?

CALayer — это графическая основа любой UIView. Через него можно управлять отрисовкой, анимациями, тенями, скруглениями и другими эффектами на уровне Core Animation.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Чему равна область видимости по умолчанию для свойств и методов в классах Swift?
Anonymous Quiz
21%
public
5%
private
68%
internal
6%
open
🤔 Как в Swift можно управлять памятью в мануальном режиме для оптимизации производительности, минуя ARC?
Anonymous Quiz
18%
Использование Unmanaged
45%
Прямые вызовы malloc и free
21%
Применение оберток в C
15%
Отключение ARC для отдельных файлов
🤔 Как сделать класс наблюдаемым (начиная с iOS 17)?

С iOS 17 используется
@Observable — новая система реактивности.
Чтобы сделать класс наблюдаемым, достаточно:
- Отметить его как
@Observable.
- Использовать обычные свойства, без
@Published.
- SwiftUI будет автоматически отслеживать изменения и обновлять интерфейс.
Это заменяет необходимость в
@ObservedObject, @StateObject, @Published в большинстве случаев.

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