iOS

Життєвий цикл застосунку

Стани застосунку, AppDelegate, SceneDelegate, background modes, завершення застосунку

20 питань зі співбесід·
Junior
1

Що таке UIApplicationDelegate?

Відповідь

UIApplicationDelegate — це протокол, який визначає методи зворотного виклику для життєвого циклу застосунку. Він дозволяє реагувати на важливі події, такі як запуск, перехід у фоновий режим або повернення на передній план. Кожен застосунок iOS повинен реалізувати цей протокол у своєму класі AppDelegate, щоб правильно керувати своїм життєвим циклом. Це центральна точка для ініціалізації сторонніх сервісів, налаштування сповіщень та керування глобальними переходами станів. Починаючи з iOS 13, цей протокол розділяє відповідальність із SceneDelegate для керування кількома вікнами.

2

Коли викликається метод application(_:didFinishLaunchingWithOptions:)?

Відповідь

Цей метод викликається під час запуску застосунку, після ініціалізації UIApplication і перед відображенням користувацького інтерфейсу. Це ідеальний момент для ініціалізації сторонніх сервісів, налаштування бази даних, реєстрації сповіщень і встановлення глобальних параметрів. Тривалих операцій слід уникати, оскільки вони затримують початкове відображення.

3

Які основні стани в життєвому циклі застосунку iOS?

Відповідь

Життєвий цикл має п'ять основних станів: Not Running (застосунок не запущено або завершено), Inactive (застосунок на передньому плані, але не отримує події, тимчасові переривання), Active (застосунок працює нормально та отримує події), Background (застосунок виконується у фоновому режимі з приблизно 30 секундами до призупинення) та Suspended (застосунок заморожено в пам'яті, без виконання). Розуміння цих станів дозволяє правильно керувати ресурсами, обробляти дозволи та оптимізувати акумулятор. Переходи між цими станами запускають методи AppDelegate або SceneDelegate.

4

Яка різниця між applicationWillResignActive та applicationDidEnterBackground?

5

Яка роль applicationDidBecomeActive?

+17 питань зі співбесід

Інші теми співбесід iOS

Основи Swift

Junior
25 запитань

Основи мови Swift

Junior
15 запитань

Основи UIKit

Junior
18 запитань

Життєвий цикл UIViewController

Junior
20 запитань

UserDefaults & Keychain

Junior
20 запитань

Auto Layout & Constraints

Mid-Level
24 запитань

UITableView & UICollectionView

Mid-Level
25 запитань

Основи SwiftUI

Mid-Level
18 запитань

Керування станом у SwiftUI

Mid-Level
22 запитань

Навігація SwiftUI

Mid-Level
18 запитань

Networking & URLSession

Mid-Level
20 запитань

Codable та парсинг JSON

Mid-Level
20 запитань

Core Data

Mid-Level
22 запитань

Протоколо-орієнтоване програмування

Mid-Level
20 запитань

Архітектура MVVM

Mid-Level
20 запитань

Push-сповіщення

Mid-Level
18 запитань

Модульне тестування та XCTest

Mid-Level
20 запитань

Тестування інтерфейсу користувача

Mid-Level
18 запитань

Xcode і система збірки

Mid-Level
16 запитань

Swift Package Manager

Mid-Level
16 запитань

Memory Management & ARC

Senior
22 запитань

Combine Framework

Senior
24 запитань

Concurrency & async/await

Senior
26 запитань

iOS Design Patterns

Senior
24 запитань

Оптимізація продуктивності

Senior
22 запитань

Безпека та шифрування

Senior
20 запитань

SwiftUI Advanced

Senior
22 запитань

Архітектура застосунків iOS

Senior
22 запитань

Опануй iOS для наступної співбесіди

Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.

Почни безкоштовно