앵간한 건 애플 개발자 문서에 잘 정리되어 있다고 하길래 한번 읽어보았다.
Core Data
Core Data는 앱의 영속 데이터, 임시 캐시 데이터를 오프라인 환경에서 저장하거나 실행 취소(Undo Functionality)함수를 실행 시킬 수 있다. 온라인 환경에서는 Cloud Kit를 통해 데이터를 싱크 시킬 수 있는 기능도 포함되어 있다. 또 데이터 모델 에디터 기능을 제공해서 데이터 모델링도 쉽게 할 수 있다.
Host in CloudKit를 체크하면 클라우드 키트를 통해 동기화도 가능해지는 것 같다.
쉽게말하자면 코어 데이터는 SQLite같은 앱 로컬 데이터베이스 처럼 보이는데 데이터베이스는 아니라고하고, 그러면서도 데이터베이스의 기능을 거의 지원하면서 보다 더 많은 확장된 기능을 제공한다. 단순 스토리지뿐만 아니라 런타임 중 인 메모리 형태로도 데이터 활용 가능하다고 함.
자세한 Core Data에 대한 내용은
https://www.letmecompile.com/코어데이터core-data와-데이터베이스의-차이
https://www.youtube.com/watch?v=O7u9nYWjvKk
를 참조!
Realm, Room 등에 밀리는 추세인듯?