[swift] SwiftyUserDefaults에서 사용자 정의 데이터 타입의 배열을 저장하는 방법은 어떻게 되는가?
SwiftyUserDefaults는 UserDefaults를 쉽게 다룰 수 있게 도와주는 라이브러리입니다. 사용자 정의 데이터 타입의 배열을 저장하기 위해서는 몇 가지 단계를 거쳐야 합니다.
먼저, 사용자 정의 데이터 타입이 Codable 프로토콜을 준수해야 합니다. Codable 프로토콜을 준수하는 데이터 타입은 직렬화(serialization) 및 역직렬화(deserialization)가 가능해집니다. 예를 들어, 다음과 같은 구조체를 사용자 정의 데이터 타입으로 정의해 보겠습니다.
struct Person: Codable {
let name: String
let age: Int
}
다음으로, UserDefaults 확장을 사용하여 사용자 정의 데이터 타입의 배열을 저장하고 불러올 수 있습니다. SwiftyUserDefaults는 Codable을 지원하기 때문에, 이를 이용하여 사용자 정의 데이터 타입을 저장할 수 있습니다. 아래의 예시 코드를 참고하십시오.
import SwiftyUserDefaults
// 배열을 저장하고 불러올 키를 정의합니다.
extension DefaultsKeys {
static let people = DefaultsKey<[Person]>("people")
}
// 저장된 배열을 불러옵니다.
let people = Defaults[.people] ?? []
// 배열에 새로운 데이터를 추가합니다.
let person = Person(name: "John", age: 25)
var updatedPeople = people
updatedPeople.append(person)
// 변경된 배열을 다시 저장합니다.
Defaults[.people] = updatedPeople
위의 예시 코드에서, 사용자 정의 데이터 타입의 배열을 저장하기 위해 DefaultsKey<[Person]>
타입의 키를 사용합니다. 배열을 불러올 때는 Defaults[.people] ?? []
와 같은 형태로 기본값을 설정할 수 있습니다. 그리고 배열에 새로운 데이터를 추가하고 업데이트된 배열을 다시 저장할 수 있습니다.
이제 SwiftyUserDefaults를 사용하여 사용자 정의 데이터 타입의 배열을 저장하고 불러올 수 있습니다. 자세한 내용은 SwiftyUserDefaults의 공식 문서를 참고하시기 바랍니다.
- SwiftyUserDefaults GitHub 레포지토리 : https://github.com/radex/SwiftyUserDefaults