掌握CoreData(第4部分,面向核心数据对象的CRUD)

为了使用面向对象的方式演示核心数据的基础,让我们使用之前的项目,使其以面向对象的方式执行CRUD操作,因为我们需要将NSManagedObject子类化。

请按照以下步骤使用Xcode创建Core Data管理的对象子类:

  1. 在项目导航器中选择您的Core Data模型。Xcode在编辑器区域的大纲视图中显示所有实体。
  2. 在大纲视图中选择一个实体,然后验证是否在Data Model检查器中将Codegen弹出菜单设置为Manual / None,如图1所示。对于要创建Core Data受管对象子类的所有实体,请重复此步骤。 由于我们只有一个实体任务,因此我们在任务实体上执行了此任务。

选择Editor> Create NSManagedObject Subclass…,如图2所示。

在显示的工作表中,选择包含您的实体的数据模型,然后单击“下一步”。 图3从列表中选择数据模型。

  1. 在出现的工作表中,选择要创建其Core Data托管对象子类的实体,然后单击“下一步”。 图4从列表中选择您的实体。

在出现的工作表中,选择一个保存文件的位置,然后单击Create,如图5所示。

Xcode在所选位置为每个所选实体创建并保存名为ClassName + CoreDataClass和ClassName + CoreDataProperties的文件,其中ClassName是实体的NSManagedObject子类的名称。 ClassName + CoreDataClass实现NSManagedObject子类,如图6所示。

ClassName + CoreDataProperties实现ClassName + CoreDataClass扩展(对于Swift应用程序)或类别(对于Objective-C应用程序),如图7所示。

以面向对象的样式创建记录到核心数据

以面向对象的样式从核心数据中获取记录

从面向对象样式的核心数据中删除记录

摘要

我们只是以对象样式的方式完成了CRUD操作。 正如我们在第1部分中所述。

核心数据以一种看起来非常面向对象的方式存储我们的代码。 实体是指类,属性是指var,关系是指var指向其他类

接下来是什么?

在下一部分中,我们将讨论实体之间的关系。

有用的链接

https://store.raywenderlich.com/products/core-data-by-tutorials

https://www.objc.io/issues/4-core-data/core-data-overview/

https://zh.wikipedia.org/wiki/Object-relational_mapping

https://cocoacasts.com/what-are-core-data-entities-and-attributes

https://cocoacasts.com/what-is-the-core-data-stack

https://developer.apple.com/library/archive/documentation/DataManagement/Devpedia-CoreData/coreDataStack.html

https://medium.com/@ankurvekariya/core-data-crud-with-swift-4-2-for-beginners-40efe4e7d1cc

https://www.raywenderlich.com/7569-getting-started-with-core-data-tutorial

https://developer.apple.com/library/archive/qa/qa1952/_index.html