일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- restful api
- MainActor
- RESTful
- ObservedObject
- Git
- environment value
- weak
- IOS
- 동시성 프로그래밍
- 스레드 점유권
- Swift Concurrency
- Swift
- assosiated type
- SwiftUI
- actor
- swfitui
- MVVM
- 앱실행
- github
- 격리 시스템
- navigationview
- environment object
- async/await
- NavigationLink
- git 명령어
- rest api
- 순환참조
- StateObject
- REDRAW
- unowned
- Today
- Total
목록2025/03/07 (4)
Develup

소개SwiftUI에서 상태 관리는 선언적 UI 프레임워크를 효과적으로 사용하기 위한 핵심 요소입니다. 특히 @StateObject와 @ObservedObject 프로퍼티 래퍼는 매우 유사해 보이지만 중요한 차이점을 가지고 있어 많은 개발자들이 혼란을 겪습니다. 이 두 도구는 Observable 객체의 생명주기와 소유권에 영향을 미치며, 잘못 사용할 경우 메모리 누수나 예상치 못한 UI 동작을 초래할 수 있습니다.이 글에서는 @StateObject와 @ObservedObject의 핵심 차이점을 파헤치고, 각각 언제 사용해야 하는지 명확한 가이드라인을 제시하겠습니다. 실제 코드 예제를 통해 두 프로퍼티 래퍼가 앱의 성능과 예측 가능성에 어떤 영향을 미치는지 알아보겠습니다.@StateObject와 @Obser..

SwiftUI의 핵심 철학은 선언적 UI 프로그래밍이며, 이를 구현하기 위해서는 상태(State) 관리가 필수적입니다. SwiftUI에서 UI는 상태의 함수로 작동하므로, 효율적인 상태 관리는 앱 개발의 성패를 좌우합니다. 그중에서도 @State와 @Binding 프로퍼티 래퍼는 SwiftUI 상태 관리의 기초를 형성합니다.이 글에서는 @State와 @Binding의 개념, 차이점, 활용 방법을 상세히 알아보고, 실제 개발 시나리오에서 이들을 어떻게 효과적으로 사용할 수 있는지 살펴보겠습니다.@State란 무엇이며 언제 사용해야 할까요?@State의 기본 개념@State는 SwiftUI 뷰 내에서 로컬 상태를 관리하기 위한 프로퍼티 래퍼입니다. @State 변수가 변경되면 SwiftUI는 자동으로 뷰를 ..

SwiftUI의 그리드 시스템은 iOS 14부터 도입된 중요한 레이아웃 기능으로, 복잡한 UI를 구현하는 데 있어 필수적인 도구가 되었습니다. 특히 LazyVGrid와 LazyHGrid는 컬렉션 뷰 형태의 레이아웃을 쉽게 구현할 수 있게 해주어 개발자들의 작업 효율성을 크게 향상시켰습니다. 이 글에서는 이 두 그리드 컴포넌트의 작동 방식과 활용법을 상세히 알아보겠습니다.SwiftUI 그리드 시스템이란 무엇인가요?SwiftUI의 그리드 시스템은 아이템을 격자 형태로 배치하는 레이아웃 방식으로, 수직(LazyVGrid)과 수평(LazyHGrid) 두 가지 유형이 있습니다. '지연(Lazy)'이라는 이름이 붙은 이유는 화면에 보이는 요소만 렌더링하는 성능 최적화 메커니즘 때문입니다.LazyVGrid: 수직 스..

SwiftUI 앱을 개발하다 보면 여러 뷰 간에 데이터를 공유하고 전달해야 하는 상황이 자주 발생합니다. 특히 뷰 계층 구조가 복잡해질수록 단순히 프로퍼티를 통해 데이터를 전달하는 방식은 번거롭고 유지보수가 어려워집니다. 이러한 문제를 해결하기 위해 SwiftUI는 환경 변수(EnvironmentValues)와 환경 객체(EnvironmentObject)라는 강력한 메커니즘을 제공합니다.이 글에서는 SwiftUI의 환경 변수와 환경 객체의 개념, 차이점, 그리고 실제 활용 방법을 자세히 살펴보겠습니다. 이를 통해 복잡한 뷰 계층 구조에서도 효율적으로 데이터를 관리하고 상태를 공유하는 방법을 알아보겠습니다.환경 변수(EnvironmentValues)란 무엇인가?환경 변수는 SwiftUI에서 뷰 계층 구조 ..