📌Swift Playgrounds
📌 앱 데이터 지속화하기
- UserDefaults: 앱 상태 데이터의 간단한 저장을 담당한다. 재실행해도 유지해야 하는 데이터 저장에 유용.
- FileManager: 파일이나 이미지를 저장하거나 읽어오는 파일 관리 시스템. 파일 단위 데이터 저장에 유용하다. UserDefaults보다 더 큰 데이터를 다룰 수 있다.
- CoreData: 말하자면 데이터베이스 역할. 구조화된 저장과 복잡한 관계 처리 필요시 사용하는 프레임워크이다.
- AppStorage: UserDefaults에 데이터를 간단히 저장하고 자동 업데이트를 가능하게 한다. 데이터는 변수에 자동으로 저장되며, 뷰가 그걸 참고하여 자동적으로 업데이트된다.
📌 로컬 저장 공간에서 데이터 로드하기
- do-catch 구문: 오류 처리를 위한 구문
do {
// 오류가 발생할 가능성이 있는 코드
try someFunction()
} catch {
// 오류 발생 시 처리할 코드
print("An error occurred: \(error)")
}
오류가 발생할 가능성이 있는 코드는 do 파트에서 try로 던져준다. 오류가 실제로 발생하면 처리할 코드는 catch 파트에 넣어주어 오류를 처리한다.
아래의 예제 코드처럼 사용할 수 있다.
enum FileError: Error {
case fileNotFound
case insufficientPermissions
}
func readFile(filename: String) throws -> String {
if filename == "" {
throw FileError.fileNotFound
} else if filename == "restricted.txt" {
throw FileError.insufficientPermissions
}
return "File content here"
}
do {
let content = try readFile(filename: "restricted.txt")
print(content)
} catch FileError.fileNotFound {
print("Error: The file was not found.")
} catch FileError.insufficientPermissions {
print("Error: You don't have permission to read this file.")
} catch {
print("An unexpected error occurred: \(error)")
}
'학습 기록 > swift' 카테고리의 다른 글
날짜 플래너: 데이터 모델 이해하기 및 동적 목록 생성하기 (0) | 2024.10.26 |
---|---|
The Basics #1 (0) | 2024.10.22 |
A Swift Tour - Object and Class 객체와 클래스 (0) | 2024.10.15 |