SwiftUI State: Ownership Rules End View Redraw Bugs
Treat SwiftUI views as functions of state (UI = f(state)). Choose wrappers by ownership: @State for local simple values, @Binding to share edits, @StateObject for view-owned models, @ObservedObject for injected ones. Compute derived state, persist with @AppStorage.