代码之家  ›  专栏  ›  技术社区  ›  retrospct

在核心数据中存储用于绘图的数据集的最佳方式是什么?

  •  0
  • retrospct  · 技术社区  · 14 年前

    我很难理解这个功能的最佳实现是什么。我的最终目标是根据会话从笔记文档中获取统计数据,如字数和行数(会话是打开文档并编辑文档然后关闭文档的一个实例)。然后把这些数据绘制出来。我找不到任何与以这种方式使用核心数据有关的内容。我正在使用NSFetchedResultsController,这与斯坦福大学发布的令人敬畏的iOS讲座一致。

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

    我有一个应用程序,它有一个文本文档,让我们称之为“笔记”实体。每个note实体都有一个以一对一关系与其关联的“stats”实体。notes实体保留单独的total wordCount和lineCount属性,而stats实体则以上述NSString格式在数据集中保留数据属性。

    理由是,我希望能够在启动时启动notes对象,而不必在应用程序启动时加载大量数据。

    这是保存此类数据的最佳方式吗?只是在我看来有点傻,因为没有更好的词语。我阅读了苹果公司关于核心数据的文档,观看了一些教程,包括斯坦福大学的讲座,并通过谷歌搜索了这些技能,但一无所获。这是我第一次使用核心数据,所以我相信我很难真正应用我学到的东西。

    如果我错过了什么,请随时叫我出来,因为我正在边走边写这篇文章。提前谢谢。

    1 回复  |  直到 14 年前
        1
  •  1
  •   FluffulousChimp    14 年前

    试图捕捉几个嵌入的问题:

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

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

    这是保存此类数据的最佳方式吗?

    您指的是将有关文档的元数据打包到 NS字符串 ;我确信它会起作用,但最好将元数据封装在自己的类中,或者按照您建议的核心数据进行封装。

    我的建议是前者;也就是说,我会把你正在打包的数据 NS字符串 苹果公司的文档明确指出,核心数据不是一项入门级技术。对于模型层的实现来说,这通常是一个很好的解决方案;但并非总是如此。在你的情况下,你可以做一些简单的事情:

    @interface NoteMetadata:NSObject
    
    @property (nonatomic, assign) NSInteger wordCount;
    @property (nonatomic, assign) NSInteger lineCount;
    @property (nonatomic, strong) NSDate *timeStamp;
    
    @end
    

    等等,那么你的Note对象可能有一个这样的数组 NoteMetadata 组成会话的对象。