在Core Data中存储图形数据集的最佳方法是什么?

时间:2012-09-28 02:09:54

标签: ios core-data nsfetchedresultscontroller

我无法掌握此功能的最佳实现。我的最终目标是从一个便条文档中获取统计数据,例如按字数统计和按行计算行数(会话是打开文档并编辑然后关闭文档的一个实例)。然后获取该数据并随时间绘制图表。我找不到任何与使用核心数据相关的方法。我正在使用NSFetchedResultsController与斯坦福发布的精彩iOS讲座一致。

这可能只是我对核心数据的一个巨大误解。是否更容易将每个会话数据保存为NSString属性,格式与“timestamp-wordCount”和“timestamp-lineCount”类似,以便以后解析?

我有一个有文字documnt的应用程序让我们称它们为“笔记”实体。每个票据实体具有以一对一的关系与其相关联的“统计”实体。 notes实体保留单独的wordCount和lineCount属性,而stats实体将数据属性保存在上述NSString格式的数据集中。

原因是我希望能够在启动时启动notes对象,而无需在app启动时加载大量数据。

这是保留此类数据的最佳方式吗?由于缺乏更好的词汇,对我来说似乎有点怪气。我阅读了有关Core Data的苹果文档,观看了一些教程,包括斯坦福大学的讲座,并通过Google-fu技术进行了搜索,但找不到任何内容。这是我第一次使用Core Data,所以我相信我只是很难实际运用我所学到的东西。

如果我错过任何事情,请随时打电话给我,因为我在走路时写这篇文章。提前谢谢。

1 个答案:

答案 0 :(得分:1)

尝试捕获几个嵌入式问题:

  

将每个会话数据保存为与“timestamp - wordCount”和“timestamp - lineCount”类似的格式的NSString属性以便以后解析会更容易吗?

可能更容易?但NSString不是存储元素数据的好方法。

  

这是保留此类数据的最佳方法吗?

您指的是将有关文档的元数据打包到NSString;我确信它会起作用 - 但最好将元数据封装在自己的类中 - 或者像你建议的核心数据一样。

我的建议是前者;也就是说,我会将您正在打包的数据放入NSString并从中创建一个类。 Apple文档直截了当地声明Core Data不是入门级技术。对于模型层的实现,它通常是一个很好的解决方案;但不总是。在您的情况下,您可以做一些简单的事情:

@interface NoteMetadata:NSObject

@property (nonatomic, assign) NSInteger wordCount;
@property (nonatomic, assign) NSInteger lineCount;
@property (nonatomic, strong) NSDate *timeStamp;

@end

等等,那么也许你的Note对象可以包含构成会话的这些NoteMetadata对象的数组。

相关问题