Core Data

Core Data
Developer(s)Apple Inc.
Stable release
3.2.0
Operating systemmacOS, iOS, tvOS, watchOS
TypeSystem Utility
LicenseProprietary
WebsiteApple Developer Core Data Programming Guide

Core Data is an object graph and persistence framework provided by Apple in the macOS and iOS operating systems. It was introduced in Mac OS X 10.4 Tiger and iOS with iPhone SDK 3.0.[1] It allows data organized by the relational entity–attribute model to be serialized into XML, binary, or SQLite stores. The data can be manipulated using higher level objects representing entities and their relationships. Core Data manages the serialized version, providing object lifecycle and object graph management, including persistence. Core Data interfaces directly with SQLite, insulating the developer from the underlying SQL.[2]

Just as Cocoa Bindings handle many of the duties of the controller in a model–view–controller design, Core Data handles many of the duties of the data model. Among other tasks, it handles change management, serializing to disk, memory footprint minimization and queries against the data.

  1. ^ Apple, "Core Data Tutorial for iPhone OS".
  2. ^ Apple, "Core Data Programming Guide".