На странице собраны вопросы по Swift — от проверки базовых принципов до практического применения и архитектурных решений. В подборке чаще встречаются темы: mobile, ios, performance.
Основные темы и навыки
mobile 82ios 75performance 51architecture 45ui 40concurrency 32async 31memory management 30
Форматы вопросов
Поведенческие вопросы106
Технические вопросы63
Лайвкодинг7
System Design1
Ориентировочная сложность
Базовые42
Продвинутые91
Практические44
С чего начать подготовку
Начните с раздела «Поведенческие вопросы» и проверьте, можете ли дать короткий ответ своими словами.
Затем разберите вопросы по теме «mobile» и свяжите ответы с собственным опытом.
Завершите подготовку практикой: проговорите решение, ограничения и возможные альтернативы.
Навигация с координаторами и обработка Deep Link Координаторы — это паттерн управления навигацией, который выносит навигационную логику за пределы UI и контроллеров Их главная задача — централизованно управлять стеком…
Как связаны точки и пиксели и как рассчитать масштаб устройства? точки (points) — логические единицы для измерения интерфейса пиксели (pixels) — физические элементы экрана scale = pixels / points — коэффициент…
Обработка касаний только по кольцу «бублика» UI/UX, кастомные вью базовый принцип: прозрачная внутренняя область (пустота) переопределить метод hitTest:withEvent: определить, попадает ли точка в кольцевую область:…
сериализация — преобразование структуры данных в формат, пригодный для хранения или передачи форматы: JSON (универсальный текстовый), XML и бинарные форматы (Protobuf, MessagePack) десериализация — восстановление…
DispatchGroup — инструмент GCD для объединения асинхронных задач Перед запуском каждого запроса создаём DispatchGroup и вызываем enter() После завершения очередного запроса вызываем leave() С помощью notify() получаем…
Синхронизация доступа к переменной Мьютексы (Mutexes) — не позволяют другим потокам обращаться к данным, пока блокировка не будет снята RW-локи (Read-Write Locks) — допускают одновременное чтение несколькими потоками,…
Программное создание UI: плюсы и минусы Интерфейс полностью формируется с помощью программного кода на UIKit/SwiftUI Разработчик получает полный контроль над иерархией элементов и параметрами компонентов Отсутствуют…
SwiftUI — декларативный UI-фреймворк Apple Кастомный компонент представляет собой структуру, которая реализует протокол View Его интерфейс описывается внутри структуры с помощью композиции стандартных компонентов и…
WebSocket — протокол для двунаправленного обмена данными в реальном времени В браузере для этого применяется объект WebSocket API Соединение создается с помощью new WebSocket(url) — этот вызов открывает канал связи…
Optional представляет собой контейнер, который может содержать значение или nil Собственный аналог Optional можно описать через enum с вариантами .some и .none Вложенный Optional, например Int???, — это Optional,…
iOS, UIResponder, UIResponderChain responder chain — цепочка объектов, через которые проходят события для обработки view считается частью цепочки, когда isUserInteractionEnabled = true и объект видим исключить view…
Оптимизация обработки изображений Применять ленивую загрузку (lazy loading), при которой загружаются только изображения, попадающие в область видимости Выбирать эффективные форматы сжатия — WebP и AVIF: они уменьшают…