objective-c - 扩展核心数据生成的 NSManagedObject 类

标签 objective-c core-data categories nsmanagedobject mogenerator

我是第一次处理核心数据,我想知道扩展 Xcode 为我的 NSManagedObject 实体生成的类的最佳实践是什么。

我看到了mogenerator我也一直在使用与 SUPER HAPPY EASY FETCHING IN CORE DATA 中建议的类似方法. 所以我有三种类(class):

  • EasyFetching 类(只有一个类);
  • 生成的 NSManagedObject 子类(即:_Entity);
  • 带有一些自定义方法的自定义子类,例如查找所有非事件对象、清除对象的缓存等(即:实体)。

这种方法让我可以编写一些自定义代码,同时我可以重构我的核心数据实体并根据需要多次生成它。但是我也遇到了一些问题,比如无法为我的实体声明对象级方法(因为 NSManagedObjectContext 只知道我的 _Entity 类)。

现在我正在使用类别来扩展我的实体功能。这工作得更好,因为我可以有自定义对象级别的方法。我现在有三种类:

  • EasyFetching 类别(因为它有很多我的自定义代码都使用的方法);
  • 生成的 NSManagedObject 子类(即:实体);
  • 我的 NSManagedObject 实体的自定义类别(即:Entity+Custom.h)。

我的问题是:您会推荐什么?

预先感谢您的回答

最佳答案

现在您已将您的问题作为答案发布到我的 question 上, 我想我应该回答你的问题:)

Mogenerator 看起来不错,试一试。

此外,您建议的分类方式也是一个不错的选择。

事实上这里是一个link这恰好说明了如何操作。

关于objective-c - 扩展核心数据生成的 NSManagedObject 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10427340/

相关文章:

ios - 使用对象过滤 NSSet 以获取具有最大属性值的对象

core-data - iOS 5.1 打开 WithCompletionHandler 不成功

Swift 如何在单独的文件中扩展我自己的类

iOS Objective C - UITableView 性能问题

sqlite - CoreData NSDate SQLite 精度差异

python - 基于类别的聚合值

iphone - UINavigationBar 上的类别 - 仅适用于某些 Controller

objective-c - 核心文本性能

iphone - 将字符串中每个单词的第一个字符更改为大写

ios - 替代 iOS 9 的 UIAlertView?