Какой принцип загрузки пользовательского интерфейса применяется в вашем приложении?
В iOS-приложениях часто применяется принцип ленивой загрузки (lazy loading) пользовательского интерфейса.
Читать ответПодготовка к интервью
3834 вопроса с собеседований в Сбер
Что проверяют на интервью
Подборка объединяет вопросы, отмеченные на этапах интервью в Сбер. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: database, sql, backend.
Каталог
В iOS-приложениях часто применяется принцип ленивой загрузки (lazy loading) пользовательского интерфейса.
Читать ответObjective-C — это объектно-ориентированный язык программирования, который долгое время был основным для разработки iOS и macOS приложений. Он основан на C и добавляет динамическую систему сообщений, похожую на Smalltalk.
Читать ответviewWillLayoutSubviews и viewDidLayoutSubviews — это методы жизненного цикла UIViewController, связанные с этапом компоновки (layout) подвидов.
Читать ответПротокол WebSocket обеспечивает двунаправленное (full-duplex) постоянное соединение между клиентом и сервером поверх одного TCP-соединения.
Читать ответФреймворк Combine в iOS используется для реактивного программирования, позволяя работать с асинхронными потоками данных.
Читать ответВ контексте iOS и программирования на Swift или Objective-C, strong — это спецификатор владения (ownership qualifier) для указателей на объекты.
Читать ответВ SwiftUI EnvironmentObject — это способ передать данные между разными представлениями (Views) без необходимости явно прокидывать их через параметры.
Читать ответВ Swift структуры имеют автоматически сгенерированные инициализаторы (memberwise initializers), которые создаются компилятором на основе свойств структуры.
Читать ответПотоки выполнения (threads) и структуры очередей (queues) — это разные концепты, используемые для управления выполнением задач в программировании, в том числе в iOS.
Читать ответNSLock — это простой и эффективный механизм блокировки в iOS для синхронизации доступа к общим ресурсам между потоками. Его основные преимущества:
Читать ответНапример, создание интерактивной карточки, которая при нажатии разворачивается с анимацией, отображая дополнительную информацию, и при этом корректно обновляет данные из модели:
Читать ответВ языке Swift по умолчанию все классы являются закрытыми для наследования (final). Это значит, что без модификатора open или public класс нельзя унаследовать за пределами модуля, где он объявлен.
Читать ответ