CoreData란?
CoreData는 iOS 앱에서 데이터를 관리하기 위한 프레임워크로, SQLite 기반의 데이터 영속성을 제공한다.
CoreData의 주요 구성 요소
NSManagedObjectContext: 데이터의 CRUD(생성, 읽기, 갱신, 삭제) 작업을 담당
NSManagedObjectModel: 데이터 모델을 정의하는 역할
NSPersistentStoreCoordinator: 데이터 저장소와의 연결을 관리
NSPersistentContainer: CoreData의 전반적인 관리 기능을 제공
CoreData 기본 사용법
import CoreData
class DataManager {
static let shared = DataManager()
let persistentContainer: NSPersistentContainer
private init() {
persistentContainer = NSPersistentContainer(name: "MyApp")
persistentContainer.loadPersistentStores {_, error in
if let error = error {
fatalError("데이터베이스 로딩 실패: \(error)")
}
}
}
func saveContext() {
let context = persistentContainer.viewContext
if context.hasChanges {
do {
try context.save()
} catch {
print("데이터 저장 실패: \(error)")
}
}
}
}