Вернуться в видеотекуiOS Мок Интервью Middle разработчика - Федор
Полное iOS мок-интервью Middle-разработчика с техническими вопросами и подробным фидбеком после разделов. Темы охватывают Swift, UIKit/SwiftUI, concurrency и архитектурные паттерны.
- Направление
- Mobile
- Формат
- Мок-собеседование
- Грейд
- Middle
- Длительность
- 1 ч 26 мин
Коротко о видео
Это записанное мок-интервью iOS-разработчика Фёдора на заявленный уровень Middle: интервьюер Эльдар проверяет основы Swift, UIKit/SwiftUI, многопоточность и архитектуру, а после блоков даёт обратную связь. Обсуждаются ARC, память, коллекции, замыкания и диспетчеризация; жизненный цикл приложения, Auto Layout, RunLoop и hit-testing; GCD, OperationQueue, async/await и actors; MVVM, Coordinator, DI, Builder и Singleton. Интервьюер в целом положительно оценивает ответы, отдельно исправляя понимание optional-замыканий, потока вызова deinit и использования MainActor в UIKit-контексте.
Затронутые темы
Что взять на заметку
- Для списка пользователей, полученного из сети, кандидат выбирает Array из-за сохранения порядка и индексного доступа; интервьюер дополняет вариант OrderedSet из swift-collections.
- В Swift полезно различать ArraySlice как представление диапазона исходного массива и copy-on-write: фактическая копия коллекции откладывается до модификации.
- При ARC важны циклы сильных ссылок между объектами и захват self в замыканиях; для диагностики удерживаемых view controller кандидат использует Memory Graph и Instruments.
- В интервью уточняется, что optional closure фактически является escaping, поскольку обёрнуто в Optional; замыкание, сохранённое в свойстве класса, также escaping.
- Для UIKit нужно учитывать, что deinit исполняется на потоке, где освобождается объект; не следует предполагать главный поток для UI-кода внутри него.
- Интервьюер уточняет, что UIViewController и UIKit-вью уже изолированы MainActor: Task, созданный в таком контексте, наследует его, поэтому после await обычно не требуется отдельно вызывать MainActor.run для обновления UI.
- В архитектуре кандидат предлагает сохранять принятый в проекте подход, оставлять Coordinator только навигацию, а зависимости передавать через DI и протоколы для подмены в тестах.