What is Core Data?
Let's start by taking a quote directly from Apple: "Core Data is a framework for managing and persisting an object graph." Core Data is not a database, but it allows us to use the API to read and write them from permanent storage. The Core Data framework shines at handling complex object graphs. Core Data shines when working with massive datasets because it is excellent when sorting and filtering data and performing undo and redo operations.
Core Data pre-iOS 10 was more complicated than it needed to be, and every year since iOS 10, it has gotten a bit easier to work with in your app. In this chapter, we will stick to the basics of saving and retrieving data from Core Data. Before we get into that, we need first to understand how Core Data works and some of the vocabulary associated with Core Data. When working with Core Data, you should be familiar with the managed object model, the managed object context, and the persistent store coordinator...