Инструменты для тестирования мобильных приложений: эмуляторы и симуляторы эмуляторы — полнофункционально воспроизводят реальные устройства с учётом аппаратной и программной части симуляторы — имитируют операционную…
Инструменты синхронизации Мьютексы (mutexes) — предоставляют доступ к ресурсу только одному потоку Семафоры — задают допустимое число потоков, работающих одновременно Мониторы — обеспечивают автоматическую блокировку…
Компоненты Android: Activity, Service, BroadcastReceiver, ContentProvider Intent — средство обмена сообщениями между компонентами Android С помощью Intent Activity и Service запускаются и вызываются друг другом…
Методы layout у UIView и работа с Auto Layout layoutSubviews — главный метод раскладки: он вызывается после изменения фрейма или вызова setNeedsLayout; внутри него размещают сабвью. setNeedsLayout — отмечает view для…
Ключевые методы жизненного цикла Activity UI-компонент Android onCreate(): создание Activity, настройка UI и загрузка данных onStart(): Activity отображается на экране onResume(): Activity получает фокус и переходит в…
Механизмы управления памятью Стек: быстрое автоматическое выделение и освобождение при ограниченном объёме Куча: динамическое выделение, требующее контроля освобождения и обычно работающее медленнее Сборщик мусора…
Какие области памяти есть кроме стека и кучи Data (Data Segment) — сегмент для глобальных и статических переменных, который создаётся во время загрузки программы BSS (Block Started by Symbol) — часть Data Segment,…
Какие ограничения и проблемы есть у SwiftUI? Молодая технология, которая пока обладает меньшей зрелостью Ограниченная поддержка старых iOS версий (iOS 13+) Ограниченный контроль над деталями UI усложняет глубокую…
Операторы обработки ошибок во Flow Flow представляет собой статический типизатор для JavaScript и не содержит традиционных операторов обработки исключений. Flow обнаруживает ошибки во время статического анализа, а не…