Жизненный цикл Activity и вызов onDestroy без onStop Жизненный цикл Activity — это последовательность методов от её создания до уничтожения Основные состояния представлены цепочкой: onCreate → onStart → onResume →…
Можно ли передать через Intent массивы примитивных типов? Android Intent используется как контейнер для обмена данными между компонентами Массивы примитивных типов можно передавать напрямую с помощью putExtra…
GCD (Grand Central Dispatch) — низкоуровневый фреймворк для многопоточности в iOS/macOS Представляет собой обёртку над pthread и ядром ОС (libdispatch) Предоставляет очереди задач для синхронного и асинхронного…
В статическом массиве вставка выполняется за O(n), поскольку элементы приходится копировать В динамическом массиве, например ArrayList, добавление в конец имеет амортизированную сложность O(1) Вставка в середину…
Почему Apple рекомендует выбирать let, а не var? let имеет блочную область видимости, тогда как var — функциональную let не позволяет случайно выполнить повторное объявление Использование const и let сокращает число…
Почему Kotlin предпочтительнее Java для Android современный язык с более выразительными абстракциями корутины упрощают асинхронность и конкурентное выполнение лаконичный синтаксис уменьшает объем шумового кода…
ограниченные сроки и ресурсы → фокус на UI как способе быстро проверять систему UI-тесты проверяют end-to-end сценарии вместе с проходящей через них бизнес-логикой бизнес-правила могли проверяться через интеграционные…
автоматическая выгрузка возможна только при наличии стабильных данных и готовых артефактов для маркетплейса особенно опасна публикация недоработанного или нестабильного билда исключение этого шага уменьшает риск…
Почему выбирают UIKit, а не SwiftUI? UIKit — зрелый фреймворк с полноценной поддержкой iOS SwiftUI — сравнительно новая технология, рассчитанная на iOS 13+ UIKit обеспечивает детальный контроль над UI и анимациями…
Почему кнопка может не реагировать на нажатия? UI/UX: кнопка отключена (disabled) либо скрыта с помощью стилей События: обработчик событий отсутствует, привязан неправильно или не вызывается Перекрытие: кнопку может…