Подборка объединяет вопросы, отмеченные на этапах интервью в ВК. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: performance, hittest, ios.
Отличие escaping- и non-escaping-замыканий Swift и управление временем жизни объектов non-escaping: замыкание выполняется только в рамках функции, которой оно передано, и завершается до её окончания escaping:…
Long-polling, WebSocket и gRPC stream: в чём разница и когда их применять Long-polling: реализация push-механизма поверх HTTP клиент отправляет запрос, а сервер удерживает его открытым до появления новых данных после…
Ключевые различия между типами значений и ссылочными типами область памяти: value type содержит сами данные, тогда как reference type — ссылку на объект копирование: при присваивании value type дублируется значение, а…
Ключевые различия структур и классов структуры относятся к типам значений (value type), а классы — к ссылочным типам (reference type) структура содержит данные непосредственно, тогда как объект класса размещается в…
Кодовая верстка интерфейса и Interface Builder: сравнение подходов верстка программно — больше гибкости и полный контроль над настройками, что особенно важно для сложной логики UI Interface Builder — это визуальный…
TTL (Time To Live) — это параметр, определяющий срок жизни данных он устанавливает предельное время, в течение которого объект существует или остаётся актуальным используется в сетях (IP-пакеты), при кэшировании (DNS,…
Что представляет собой Copy-On-Write (COW) и можно ли применить его к пользовательским структурам? Copy-On-Write (COW) — это способ оптимизировать использование памяти и производительность, при котором данные не…
Что такое Keychain и как его использовать? Keychain представляет собой системное хранилище паролей и секретных данных в iOS/macOS Для защиты информации применяются безопасное аппаратное и системное шифрование Работа с…
Что такое indirect enum в Swift? Swift, перечисления (enum), программирование indirect разрешает создавать рекурсивные case case содержит ссылку, а не само значение применяется для описания составных структур:…
Что такое замыкания (closures)? понятие из функционального программирования и JS объединение функции с её лексическим окружением, то есть переменными внешнего скоупа сохраняет возможность обращаться к переменным после…
механизмы управления доступом к ресурсам при работе нескольких потоков мьютексы — обеспечивают взаимное исключение и закрывают критическую секцию от одновременного доступа семафоры — используют счетчик ресурсов,…