UserDefaults
앱을 실행하는 동안 지속적으로 key-value 쌍을 저장하는 사용자의 기본 데이터베이스에 대한 인터페이스이다.
- Apple Developer Document -
UserDefaults는 간단한 설정 값이나 기본 설정과 같은 작은 데이터를 저장하기 위한 인터페이스이다.
주로 앱의 사용자 설정, 앱 상태, 사용자가 설정한 환경 변수 등을 저장하는 데 사용된다.
UserDefaults는 앱의 설정 파일이나 데이터베이스와 달리 파일 시스템에 저장되지 않고, 메모리 내에 유지된다. 따라서 작은 양의 데이터를 저장하는 데 적합하며, 주로 앱의 생명주기 동안 지속되는 값을 저장하는 데 사용된다.
UserDefaults 사용 방법
1 .UserDefaults 객체 생성 : UserDefaults 객체를 생성하거나 기존의 UserDefaults 인스턴스를 가져온다.
let defaults = UserDefaults.standard
2. 데이터 저장 : set(_:forKey:) 메서드를 사용하여 데이터를 저장한다. 이 메서드는 key-value 쌍을 받아 해당 key에 대한 값을 설정한다.
defaults.set("dark", forKey: "theme")
3. 데이터 검색 : 해당 key를 사용하여 값을 가져온다. 값이 없을 경우 기본값을 설정할 수도 있다.
if let theme = defaults.string(forKey: "theme") {
print("현재 테마는 \(theme)입니다.")
} else {
print("테마 설정이 없습니다.)
}
4. 데이터 제거 : removeObject(forKey:) 메서드를 사용하여 UserDefaults에 저장된 데이터를 제거할 수 있다.
defaults.removeObject(forKey: "theme")