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

Вопросы собесов t.iss.one/+wtkjBoN6OI5hNGEy
Задачи t.iss.one/+JQkI4zSOEXtkYzg6
Вакансии t.iss.one/+3o9-Ytdiv_E5OGIy
Download Telegram
🤔 Создание API на Swift, который обрабатывает все входящие запросы через один метод. Какой паттерн использовать для разграничения обработки?
Anonymous Quiz
13%
Command
34%
Chain of Responsibility
13%
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
67%
internal
6%
open
🤔 Как в Swift можно управлять памятью в мануальном режиме для оптимизации производительности, минуя ARC?
Anonymous Quiz
18%
Использование Unmanaged
45%
Прямые вызовы malloc и free
23%
Применение оберток в C
13%
Отключение ARC для отдельных файлов
🤔 Как сделать класс наблюдаемым (начиная с iOS 17)?

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

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
🤔 Какие стратегии Swift позволяют минимизировать потребление памяти при работе с большими массивами данных?
Anonymous Quiz
64%
Использование lazy коллекций
7%
Применение in-place модификаций
6%
Создание копий массивов
22%
Оптимизация с помощью autoreleasepool
💊1
🤔 Как в Swift можно создать механизм для перехвата и модификации всех сообщений, отправляемых на сервер, без изменения кода отправки?
Anonymous Quiz
8%
Использование Aspect-oriented programming
31%
Применение method swizzling
35%
Создание custom URLProtocol
27%
Настройка Network Interceptor
🤔 Как с помощью GCD остановить выполнение задачи?

GCD сам по себе не позволяет прерывать задачу. Вы должны реализовать контроль вручную:
- использовать флаги isCancelled,
- или отменять задачу через DispatchWorkItem с проверкой состояния.
Если задача уже исполняется, её нельзя «убить» — только корректно завершить изнутри.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Какой подход используется для модульного тестирования асинхронного кода в Swift?
Anonymous Quiz
48%
Использование XCTestExpectation
38%
Применение моков и стабов
10%
Синхронизация выполнения тестов
4%
Запуск тестов в отдельном процессе
🤔 Как очищается стек?

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


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Какой паттерн проектирования наилучшим образом подходит для управления изменениями состояния приложения в реактивной манере?
Anonymous Quiz
70%
Observer
7%
Singleton
18%
State
5%
Strategy
👍1
🤔 Что такое state, state object, observed object?

@State — локальное состояние внутри view, простое и недоступное извне.
@StateObject — объект со сложным состоянием, живёт в view.
@ObservedObject — подписка на внешний объект, но управляется извне.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как в Swift можно контролировать последовательное выполнение асинхронных задач в цепочке вызовов?
Anonymous Quiz
3%
Использование Promise
50%
Применение DispatchQueue
39%
Использование async/await
8%
Применение Combine
💊4
🤔 Как называется специальный тип в Swift, который может содержать либо значение, либо nil?
Anonymous Quiz
97%
Optionals
0%
Enums
0%
Tuples
3%
Closures
🤔 В каких случаях лучше использовать SQLite, а в каких Core Data?

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


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Вопрос: Как в Swift создать словарь с определенными ключами и значениями?
Anonymous Quiz
76%
["key1": "value1", "key2": "value2"]
14%
Dictionary("key1": "value1", "key2": "value2")
0%
{["key1": "value1", "key2": "value2"]}
10%
(key1: "value1", key2: "value2")
🤔 Где находятся элементы массива?

Элементы массива (Array) в Swift (и других языках) хранятся в непрерывном участке памяти:
- Все значения идут друг за другом — это позволяет быстро получать элементы по индексу (O(1)).
- При увеличении размера массива может происходить перевыделение памяти, чтобы вместить больше элементов.
- В Swift Array — структура с копированием по необходимости (copy-on-write), что делает работу с массивами эффективной и безопасной.


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