Swift: вопросы на собеседовании
Вопросы и ответы по Swift: подготовка, примеры и типичные ошибки.
Проверьте себя по Swift: 5 вопросов, ~10 минут
Вопросов: 41. Частые идут первыми, сложные возвращаются на повторение.
- Что такое Swift Actors и как они помогают с параллелизмом?Senior· спрашивают почти всегда
- Как работает Automatic Reference Counting (ARC) в Swift?Senior· спрашивают почти всегда· полный разбор — Jobs/Boost
- В чём разница между
classиstructв Swift?Junior· спрашивают почти всегда· полный разбор — Jobs/Boost - Что такое optionals в Swift и как безопасно их разворачивать?Junior· спрашивают почти всегда
- В чём разница между strong, weak и unowned ссылками?Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- Что такое
async/awaitв Swift и чем он отличается от completion handlers?Middle· спрашивают почти всегда - Для каких задач Swift является сильным выбором, а где лучше честно выбрать другой язык?Middle· спрашивают почти всегда
- Что такое
Codableв Swift и как настраивать кодирование/декодирование?Junior - В чём разница между
map,filter,reduceиcompactMapв Swift?Junior· полный разбор — Jobs/Boost - Что такое Swift enums с ассоциированными значениями и как они используются с pattern matching?Middle· полный разбор — Jobs/Boost
- Что такое
@escapingclosure и когда он нужен?Middle· полный разбор — Jobs/Boost - Что такое generics в Swift и как использовать ограничения типов (type constraints)?Middle
- В чём разница между
letиvarв Swift?Junior - Что такое
@MainActorв Swift и когда его следует использовать?Senior· полный разбор — Jobs/Boost - Что такое ключевое слово
someи opaque return types в Swift?Middle· полный разбор — Jobs/Boost - Что такое property wrappers в Swift (
@Published,@State,@Binding)?Middle· полный разбор — Jobs/Boost - Как сравнить Swift с ближайшими альтернативами по производительности, поддерживаемости, найму и экосистеме?Middle· полный разбор — Jobs/Boost
- Как понять, что команда использует Swift идиоматично, а не переносит привычки из другого языка?Senior· полный разбор — Jobs/Boost
- Представьте, сервис на Swift стал медленнее или нестабильнее после релиза. Какие language/runtime-specific причины вы проверите?Senior· полный разбор — Jobs/Boost
- Что такое Swift extensions и каковы их ограничения?Junior· полный разбор — Jobs/Boost
- Какие ошибки делают разработчики, переходящие на Swift с другого языка или стека?Middle· полный разбор — Jobs/Boost
- Какие особенности runtime, type system или memory model Swift реально влияют на архитектуру приложения?Middle· полный разбор — Jobs/Boost
- Что такое protocols в Swift и чем они отличаются от интерфейсов в других языках?Junior
- Какие production-риски чаще всего возникают в проектах на Swift: производительность, зависимости, конкурентность, деплой или observability?Senior
- Что такое
Taskв Swift Concurrency и что такоеTaskGroup?Senior - В чём разница между
Any,AnyObjectи generics в Swift?Middle· полный разбор — Jobs/Boost - Что такое closures в Swift и как они захватывают значения?Middle· полный разбор — Jobs/Boost
- Как Swift обрабатывает ошибки с помощью
throws,try,catchиResult<T, E>?Middle - В чём разница между
lazyсвойствами и вычисляемыми (computed) свойствами?Middle· полный разбор — Jobs/Boost - В чём разница между
if let,guard letи??(оператор nil-coalescing)?Junior· полный разбор — Jobs/Boost - Что такое protocol-oriented programming и чем он отличается от ООП?Middle· полный разбор — Jobs/Boost
- В чём разница между протоколом
Sendableи гонками данных (data races) в Swift Concurrency?Senior - Расскажите о случае, когда особенности Swift повлияли на архитектурное решение, производительность или сопровождение проекта.Middle· полный разбор — Jobs/Boost
- Чем
Sendableважен для потокобезопасности в Swift Concurrency?Middle· полный разбор — Jobs/Boost - Что такое structured concurrency в Swift:
Task,TaskGroup, actor isolation?Middle· полный разбор — Jobs/Boost - В чём разница между value types и reference types в Swift и какие коллекции используют каждый из них?Middle· полный разбор — Jobs/Boost
- Какие версии, возможности или изменения экосистемы Swift важно учитывать на собеседованиях в 2026 году?Middle
- Что такое key-value observation (KVO) в Swift и когда оно ещё применяется?Middle· полный разбор — Jobs/Boost
- Как Swift взаимодействует с Objective-C?Middle
- Какие новые возможности появились в Swift 5.10/6.0?Senior· полный разбор — Jobs/Boost
- Что такое Swift macros (представленные в Swift 5.9) и для чего их можно использовать?Senior· полный разбор — Jobs/Boost