NSManagedObjectContext类别

问题描述 投票:0回答:2

我经常在多个类中设置获取请求以从核心数据(以及其他一些结果)中检索'allRecipes'或'lastModifiedDate'。

为此,使用专门的类别NSManagedObjectContext+RecipeAppConveniences会很方便。我真的不需要使这个通用,我将根据具体情况决定,如果我经常提取相同的东西,它将在该类别中有用。

这是标准做法吗?我没有太多使用类别,只是想检查它不是反模式,而且我不会忽略会导致我痛苦的事情。

ios cocoa core-data nsmanagedobjectcontext anti-patterns
2个回答
1
投票

它不会是一个反模式,如果你认为这将使你的代码通用,可读,你可以去做。

为了这种灵活性,它被添加到objective-c中。


1
投票

Apple的方法是将方法添加到NSManagedObject子类中,该子类将NSManagedObjectContext作为参数,例如,

@interface Recipe : NSManagedObject

+ (NSArray *)allRecipesInContext:(NSManagedObjectContext *)moc;

@end

此模式还与用于插入新对象的新API更好地对齐,例如, [Recipe.alloc initWithContext:moc]

© www.soinside.com 2019 - 2024. All rights reserved.