NSDictionary
을 기반으로 "비즈니스 개체"를 만들려고합니다. 그 이유는 구현이 임의의 키를 사용하여이 객체를 확장 할 수 있기를 바라는 또 다른 이유는 편리한 plist 형식 (객체가 정수, 부동 또는 문자열)을 사용하여 유지한다는 것입니다.NSDictionary에서 지원하는 개체 만들기
비즈니스 오브젝트에는 여러 개의 사전 정의 된 특성이 있습니다 (예 :
@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];
좋은 지적! 저의 수업에는 초보적인 KVC 준수 (검증 등 없음)가 있습니다. 그러나 나는 어떻게 거기에서 그리고 plist에서 가야합니까? 나는 그것이 나의 질문의 핵심이라고 생각한다. 편집 : plist에서 *가는 것이 더 어렵다고 생각하지만,이 경우에는 필요하지 않습니다. – Krumelur
@Krumelur. 편집 됨. – Vignesh
고맙습니다. 내 질문을 잘 업데이 트 :) – Krumelur