В настоящее время я разрабатываю приложение, которое в значительной степени зависит от получения веб-контента. У меня есть серия классов NSObject, которые представляют содержимое, которое я получаю в формате JSON. У меня также есть классы NSManagedObject, которые представляют мою модель Core Data, которые почти идентичны.Основные данные: хранение веб-контента перед сохранением
Вот пример класса NSObject, который я использую, чтобы держать мой веб-контента:
@interface MovieRecord : NSObject {
NSString *movieTitle;
NSDecimalNumber *movieId;
NSString *movieRating;
NSString *movieDescription;
NSDate *movieReleaseDate;
NSMutableArray *movieVideos; // collection of class videoRecord
NSMutableArray *actors;
UIImage *movieImage;
NSURL *movieImageURL;
}
А вот пример из моего класса NSManagedObject:
@interface Movie : NSManagedObject
{
}
@property (nonatomic, retain) NSNumber * id;
@property (nonatomic, retain) NSString * description;
@property (nonatomic, retain) id image;
@property (nonatomic, retain) NSString * rating;
@property (nonatomic, retain) NSString * name;
@property (nonatomic, retain) NSDate * releaseDate;
@property (nonatomic, retain) NSString * imageURL;
@property (nonatomic, retain) NSSet* actors;
@end
В этом примере пользователь будут просматривать много фильмов, но они не всегда будут сохранять фильм в постоянном магазине. Это была моя основная причина сначала хранить информацию в отдельных классах, а затем, если они решили сохранить ее, я заполню классы объектов NSManaged и сохраню. Класс NSObject не будет полностью заполнен до тех пор, пока пользователь не просвернется до подробного представления (изначально будут установлены только MovieTitle и movieID).
Я думаю, что мой вопрос здесь имеет смысл держать эти классы отдельно? Есть ли лучший подход к дизайну, который я просто не вижу? Должен ли я просто использовать NSDictionary для заполнения табличных представлений (NSDictionary заполняется данными JSON)?