General topic questions
SwiftUI state ownership
HardMost asked
Free section · general topics & algorithms
When do you use @State, @Binding, @StateObject, @ObservedObject, and @EnvironmentObject?
Reveal model answer
@State owns simple local view state. @Binding reads/writes parent-owned state. @StateObject creates and owns an ObservableObject for the view’s lifetime. @ObservedObject observes an object owned elsewhere (don’t create it inline). @EnvironmentObject shares dependencies down the tree. Prefer @Observable (Observation framework) in modern apps where available.