0

:) 很棒的社区,我读了很多书,一路上找到了无数问题的答案。谢谢 !!

现在是提问时间.. 我对 iOS 编程很陌生,并且正在开发一个应用程序,我想升级它以将核心数据用于我的对象存储。

我当前的应用程序使用 NSMutableArray 来存储我的对象。这些对象由几个 NSString 和 NSNumber 组成,而且每个对象都有一个 NSMutableArray 来存储用户生成的事件列表,其中包含每个对象特定的各种详细信息。该对象将具有对 NSMutableArray 事件执行的方法,并将向用户提供有关事件列表的比较信息。一切都很好,但我的程序中没有数据持久性.. 输入核心数据 :)

在我将应用程序移入核心数据世界的最初几次尝试中,我还没有找到任何明确的途径将这种对象存储模式直接孪生到核心数据样式对象中。定义每个属性类型的弹出窗口不包含 NSArray,至少我没有找到。

几年来我一直在修改编程,但我仍然称自己是面向对象编程的新手,并且数据库经验为零..任何帮助或分享的经验将不胜感激:)

谢谢 !!

4

1 回答 1

1

不幸的是,这里不会有相同的数据模型,您不应该将 NSArray 与 Core Data 一起使用。此外,Core Data 不像其他关系数据库(它不仅仅是一个数据库),因此您缺乏数据库经验不应该让您处于劣势。

我当前的应用程序使用 NSMutableArray 来存储我的对象。这些对象由几个 NSString 和 NSNumber 组成,而且每个对象都有一个 NSMutableArray 来存储用户生成的事件列表,其中包含每个对象特定的各种详细信息。该对象将具有对 NSMutableArray 事件执行的方法,并将向用户提供有关事件列表的比较信息。一切都很好,但我的程序中没有数据持久性.. 输入核心数据 :)

  • 您提到的第一个对象将成为一个实体
  • NSString(s) 和 NSNumber(s) 可能是该实体的属性。
  • 事件将是一个具有自己属性的单独实体。
  • 您可以通过关系将第一个实体与事件相关联(如具有一个/“对一个”或多个/“对多个”事件)。
  • 事件可能与第一个实体具有反向关系。
  • 对于您的自定义方法,您可以为每个实体分配一个“自定义托管对象类”,这与您现在调用它们的方式非常相似。

如果您刚刚开始使用 Core Data,我可能会建议在 Xcode 中使用“空应用程序”项目模板(选中“使用 Core Data”)并一次将您的项目移植到一个视图上。在移植任何东西之前,您要做的第一件事就是创建数据模型。

于 2013-09-06T05:33:26.740 回答