[swift] SwiftyUserDefaults로 앱 설정을 저장 및 관리하는 방법은 어떻게 되나요?

다음은 SwiftyUserDefaults를 사용하여 앱 설정을 저장 및 관리하는 예제입니다.

  1. 먼저, 프로젝트에 SwiftyUserDefaults 라이브러리를 추가합니다. 이 곳에서 라이브러리를 다운로드하거나, CocoaPods를 사용하여 설치할 수 있습니다.

  2. SwiftyUserDefaults를 사용하려면, UserDefaults의 서브클래싱을 해야합니다. 다음과 같이 UserDefaults를 상속받는 DefaultsKeys 클래스를 만들어줍니다.

import SwiftyUserDefaults

extension DefaultsKeys {
    var username: DefaultsKey<String> { .init("username") }
    var darkModeEnabled: DefaultsKey<Bool> { .init("darkModeEnabled") }
}
  1. 이제 다음과 같이 설정값을 저장하거나 가져오는 코드를 작성할 수 있습니다.
// 값을 저장하기
Defaults[.username] = "JohnDoe"
Defaults[.darkModeEnabled] = true

// 값을 가져오기
let username = Defaults[.username]
let isDarkModeEnabled = Defaults[.darkModeEnabled]

위의 예제에서 DefaultsUserDefaults의 서브클래스인 SwiftyUserDefaults의 인스턴스입니다. 따라서 Defaults를 통해 .username이나 .darkModeEnabled의 속성을 접근할 수 있습니다.

SwiftyUserDefaults를 사용하면 UserDefaults에서 직접 값을 가져오거나 저장하는 것보다, 더 간결하고 타입 안전한 코드를 작성할 수 있습니다.

더 자세한 내용은 SwiftyUserDefaults GitHub 페이지를 참고하시기 바랍니다.