https://developer.apple.com/documentation/foundation/nsuserdefaults

https://developer.apple.com/documentation/coredata

https://baked-corn.tistory.com/49

Core Data

오프라인 사용을 위해

  1. 애플리케이션의 영구 데이터를 저장

  2. 임시 데이터를 캐시

  3. 단일 기기에서 앱에 실행 취소 기능을 추가하는 프레임워크

Core Data의 데이터 모델 편집기를 통해 데이터의 유형과 관계를 정의하고 각 클래스 정의를 생성합니다. Core Data는 런타임에 개체 인스턴스를 관리하여 다음 기능을 제공 할 수 있습니다

Persistence

Core Data는 개체를 저장소에 매핑하는 세부 정보를 추상화하여 데이터베이스를 직접 관리하지 않고도 Swift 및 Objective-C의 데이터를 쉽게 저장할 수 있습니다.

https://docs-assets.developer.apple.com/published/5770f06627/73cb5bb3-06ab-4017-89da-84ddacd20279.png

개별 또는 일괄 변경 사항 실행 취소 및 다시 실행

Core Data의 실행 취소 관리자는 변경 사항을 추적하고 개별적으로, 그룹으로 또는 한 번에 모두 롤백 할 수 있으므로 앱에 실행 취소 및 다시 실행 지원을 쉽게 추가 할 수 있습니다.

https://docs-assets.developer.apple.com/published/843104c2e8/8ff27b5a-9441-4054-91ec-152843782ce2.png

백그라운드 데이터 작업

백그라운드에서 JSON을 객체로 구문 분석하는 것과 같이 잠재적으로 UI 차단 데이터 작업을 수행합니다. 그런 다음 결과를 캐시하거나 저장하여 서버 왕복을 줄일 수 있습니다.

https://docs-assets.developer.apple.com/published/1b9da4c41b/efc8be3c-1e32-4579-9356-4e029b99268a.png

동기화보기, 버전관리 및 마이그레이션