나는 과도 특성의 정확한 정의에 대해 확실하지 오전 :CoreData의 일시적인 속성을 언제 개체 모델에 포함해야합니까?
- 하나는 개체 모델의 일시적인 속성을 정의하고 관련 클래스 필요할 때를 계산할 수 있습니다.
- 그러나 클래스를 지정하고 개체 모델에서 선언하지 않고 임의의 일시적인 속성에 대해 임의의 getter 메서드를 정의하면 (모델의 해당 클래스에 엔터티가 연결되어있는 한) 모든 작업이 올바르게 작동합니다.
내 질문 : 개체 모델에서 일시적인 속성을 선언 할 때의 이점은 무엇입니까? 나는 아래쪽 만 볼 수 있습니다. 일시적인 속성 (예 : "FormattedDate")을 추가 할 때마다 persistentStore가 호환되지 않습니다.
무엇이 누락 되었습니까? Core Data Programming Guide에서
설명해 주셔서 감사합니다. 나는 이것을 다시 시험했다. 분명히 틀렸어. 모델에 일시적인 속성을 추가해도 호환되지 않는 상점이 생기는 것은 아닙니다. 효율성에 대한 논의가있는 것 같습니다. 그러나 캐싱이 어떻게 작동하는지 이해하지 못했습니다. 예를 들어 CLLocationCoordinate2D 속성이 있고 getter 메서드가 두 배의 위도/경도로 간단하게 만듭니다. 코어 데이터가 결과 값을 어떻게 캐시합니까? – FelixLam
확실하지는 않지만 테스트 할 가치가 있습니다 : "일시적인 값을 가져 오거나 설정하는 두 가지 전략이 있습니다."느리게 "... 또는 awakeFromFetch 중에 일시적 값을 검색 할 수 있습니다. 값이 클 경우 느슨하게 검색합니다 ... 영구 값의 경우 일시적인 값이 변경 될 때마다 업데이트하거나 (..., 객체를 저장할 때까지 업데이트를 연기 할 수 있습니다 ... "(적합하게 다듬어 진) –