UserDefaults 과 CoreData 차이(Swift)

이득령·2024년 7월 14일

저장하는 방식들

UserDefaults

  1. 간단한 사용법

    UserDefaults는 사용하기 매우 간편합니다. Key - Value 쌍을 저장하고 불러오는 방식으로, 단순한 데이터 저장에 적합합니다.

    UserDefaults.standard.set("value", forKey: "key")
    let value = UserDefaults.standard.string(forKey: "key")
  2. 자동 동기화

    UserDefaults에 저장된 데이터는 앱이 백그라운드로 들어갈 때 자동으로 동기화됩니다.

CoreData

  1. 복잡한 데이터 구조

    CoreData는 객체 그래프와 영속성을 관리할 수 있는 강력한 프레임워크입니다. 관계형 데이터베이스 모델처럼 복잡한 데이터 구조를 관리할 수 있습니다.

  2. 성능 최적화

    CoreData는 내부적으로 SQLite를 사용하여 데이터를 관리하므로 대용량 데이터 처리가 효율적입니다.

  3. 데이터 쿼리

    NSPredicate를 사용하여 복잡한 쿼리를 실행할 수 있습니다.

    let fetchRequest: NSFetchRequest<Entity> = Entity.fetchRequest()
    fetchRequest.predicate = NSPredicate(format: "attribute == %@", "value")
    let results = try context.fetch(fetchRequest)

결론

  • UserDefaults: 간단한 설정 값이나 작은 데이터를 저장할 때 유용합니다.
  • CoreData: 복잡한 데이터 구조를 관리하고, 대용량 데이터를 처리하며, 관계형 데이터를 다룰 때 적합합니다.
profile
프로그래머 아님

0개의 댓글