[SwiftUI] @AppStorage와 @SceneStorage 프로퍼티 래퍼 이해하기
·
Apple/SwiftUI
안녕하세요! 피피아노입니다 🎵 이번 포스팅에서는 @AppStorage와 @SceneStorage 프로퍼티 래퍼에 대해서 정리를 해보려고 합니다. 앱에 요구사항 중 하나는 앱을 다시 시작해도 유지되어야 하는 소량의 데이터를 앱이 저장하고 있어야 한다는 점입니다. 이러한 부분들을 위해서 SwiftUI는 소량의 앱 데이터를 지속적으로 저장하기 위해 두 개의 프로퍼티 래퍼(@AppStorage, @SceneStorage)를 제공하고 있습니다! @SceneStorage 프로퍼티 래퍼@SceneStorage 프로퍼티 래퍼는 개별 앱 화면 인스턴스의 범위 내에서 소량의 데이터를 저장하는 데 사용되며 앱이 실행되는 사이에 화면 상태를 저장하거나 복원하는 데 주로 사용됩니다.  예를 들어서 우리가 어떤 앱에서 양식을 ..
[SwiftUI] Property Wrapper 알아보기
·
Apple/SwiftUI
안녕하세요! 피피아노입니다 🎵 이번 포스팅에서는 SwiftUI에서 사용하는 Property Wrapper들의 개념과 각 특징들에 대해서 정리를 해보려고 합니다. 그럼 바로 시작하겠습니다! 프로퍼티 래퍼(Property Wrapper)란?프로퍼티 래퍼는 Swift 5.1에서 도입된 기능으로, 프로퍼티의 동작을 캡슐화하고 재사용할 수 있도록 해줍니다. 프로퍼티 래퍼를 사용하면 코드 중복을 줄이고, 프로퍼티에 대한 접근 방식이나 값 변환 로직을 중앙 집중화할 수 있습니다. 이를 통해 프로퍼티에 대한 공통 동작을 일관되게 적용할 수 있습니다. 프로퍼티 래퍼의 기본 구조프로퍼티 래퍼는 @propertyWrapper 애트리뷰트로 정의된 구조체나 클래스를 통해 구현됩니다. 일반적으로 wrappedValue라는 이름..
[SwiftUI] ObservedObject가 뭘까??
·
Apple/SwiftUI
안녕하세요! 피피아노입니다 🎵 이번 포스팅에서는 ObservedObject에 대해서 포스팅을 해보려고 합니다! 그럼 바로 시작하겠습니다. ObservedObject란?ObservedObject가 무엇인지 알아보기 위해서 먼저 애플 공식 문서를 먼저 확인해보겠습니다.https://developer.apple.com/documentation/swiftui/observedobject ObservedObject | Apple Developer DocumentationA property wrapper type that subscribes to an observable object and invalidates a view whenever the observable object changes.developer.ap..
[SwiftUI] 상태 프로퍼티(State Property)
·
Apple/SwiftUI
안녕하세요! 피피아노입니다🎵 이번 포스팅에서는 SwiftUI의 상태 프로퍼티(State Property)에 대해서 정리해보도록 하겠습니다. 서론 SwiftUI는 앱 개발에 있어서 데이터 중심의 접근 방식을 선호합니다. 이 방식에서는, 사용자 인터페이스의 각 뷰가 기본 데이터가 변할 때마다 별도의 업데이트 코드를 작성하지 않아도 자동으로 갱신되는 특성을 가지고 있습니다. 이는 데이터와 뷰 사이에 마련된 게시자(publisher)와 구독자(subscriber)의 관계를 통해 가능해집니다. SwiftUI는 이러한 데이터 주도적인 사용자 인터페이스를 구현하기 위해 여러 도구를 제공합니다. 상태 프로퍼티(State properties), 관찰 가능한 객체(Observable objects), 상태 객체(State..