Керування станом у SwiftUI
@State, @Binding, @ObservedObject, @EnvironmentObject, @StateObject, потік даних
1Який property wrapper використовувати для керування локальним станом у view SwiftUI?
Який property wrapper використовувати для керування локальним станом у view SwiftUI?
Відповідь
@State створює єдине джерело істини (source of truth) для змінюваних даних усередині view. SwiftUI автоматично керує життєвим циклом і перемальовує view, коли значення змінюється. Це фундаментальний механізм для локальних змін стану в межах одного view.
2Для чого призначений property wrapper @Binding у SwiftUI?
Для чого призначений property wrapper @Binding у SwiftUI?
Відповідь
@Binding створює двонаправлене посилання на наявне джерело істини. Воно дозволяє дочірньому view змінювати дані батьківського view, не володіючи самим джерелом. Це необхідно для комунікації батьківський-дочірній зі збереженням єдиного авторитетного джерела.
3Яка роль @Published у керуванні станом SwiftUI?
Яка роль @Published у керуванні станом SwiftUI?
Відповідь
@Published позначає властивості класу ObservableObject як спостережувані. Коли властивість @Published змінюється, клас сповіщає всіх спостерігачів, запускаючи перемальовування views. Це міст між класами та реактивною системою SwiftUI.
Як отримати доступ до властивості @State батьківського view з дочірнього view?
Коли використовувати @AppStorage замість @State?
+19 питань зі співбесід
Інші теми співбесід iOS
Основи Swift
Основи мови Swift
Основи UIKit
Життєвий цикл UIViewController
UserDefaults & Keychain
Життєвий цикл застосунку
Auto Layout & Constraints
UITableView & UICollectionView
Основи SwiftUI
Навігація SwiftUI
Networking & URLSession
Codable та парсинг JSON
Core Data
Протоколо-орієнтоване програмування
Архітектура MVVM
Push-сповіщення
Модульне тестування та XCTest
Тестування інтерфейсу користувача
Xcode і система збірки
Swift Package Manager
Memory Management & ARC
Combine Framework
Concurrency & async/await
iOS Design Patterns
Оптимізація продуктивності
Безпека та шифрування
SwiftUI Advanced
Архітектура застосунків iOS
Опануй iOS для наступної співбесіди
Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.
Почни безкоштовно