Я хочу создать «бизнес-объект» на основе NSDictionary
.Причина этого заключается в том, что я хочу, чтобы реализации могли расширять этот объект произвольными ключами, а другая причина заключается в том, что я сохраняю его, используя удобный формат plist (сохраненные объекты представляют собой целые числа, числа с плавающей запятой или строки).
Бизнес-объект содержит ряд предопределенных свойств, например,
@property NSString* customerName;
@property NSString* productCode;
@property int count;
@property double unitPrice;
Я хочу сериализовать это, например, в список свойств (это не является строгим требованием, это могут быть некоторые другие простыеиспользовать формат).Предпочтительно, реализация класса должна быть просто
@synthesize customerName, productCode, count, unitPrice:
для примера выше.Чтобы использовать этот класс, я хочу сделать что-то вроде:
MyBusinessObject* obj = [MyBusinessObject businessObjectWithContentsOfFile:fileName];
obj.productCode = @"Example";
[obj setObject:@"Some data" forKey:@"AnExtendedProperty"];
[obj writeToFile:fileName atomically:YES];