Core Data is Apple's object modeling and persistence framework for iOS, iPadOS, tvOS, watchOS, and macOS. Xcode provides an object model editor for specifying entities, attributes, and relationships.
Core Data is Apple's object modeling and persistence framework for macOS (macos), iPadOS (ipados), tvOS (tvos), watchOS (watchos) and iOS (ios).
Core Data is a framework that you use to manage the model layer objects in your application. It provides generalized and automated solutions to common tasks associated with object life cycle and object graph management, including persistence.
While offering some functionality that one might traditionally associate with a relational database, Core Data, itself, is not a relational database management system. It is an object-oriented framework for managing, storing and retrieving model objects of a MVC (model-view-controller) design. However, in recent years Core Data got some SQL'ish features like having aggregates or subqueries on fetch request. But the core concept is still object-orientated, i. e. relationships are resolved by simply accessing properties instead of queries containing a primary key as a condition.
Core Data provides the developer with a wide array of features to simplify the management of these model objects. Instead of using file management and the arbitrary requests for the given store type, you interact with Objective-C and Swift objects.
The typical file Core Data stores its data into is a SQLite file. Although Core Data supports SQLite as one of its persistent store types, Core Data cannot manage any arbitrary SQLite database. In order to use a SQLite database, Core Data must create and manage the database itself. There is also a binary store type and a memory store type.
Core Data is part of the following SDKs:
- iOS 3.0 and later,
- macOS 10.4 and later,
- Mac Catalyst 13.0 and later,
- tvOS 9.0 and later,
- watchOS 2.0 and later.