CoreData를 사용하는 데있어 새로운 경험이 있습니다. I 기본 저장 클래스가 관심 지점에 대한 좌표 정보를 갖고,이 클래스에 대한 코드는 다음내 데이터 모델이 목적에 적합한가요?
import Foundation
class StopAttributes: NSObject, NSCoding{
var latitude: Double!
var longitude: Double!
var state: String!
func encodeWithCoder(aCoder: NSCoder) {
aCoder.encodeDouble(latitude, forKey: "latitude")
aCoder.encodeDouble(longitude, forKey: "longitude")
aCoder.encodeObject(state, forKey: "state")
}
required init?(coder aDecoder: NSCoder) {
latitude = aDecoder.decodeDoubleForKey("latitude")
longitude = aDecoder.decodeDoubleForKey("longitude")
state = aDecoder.decodeObjectForKey("state") as! String
}
override init() {
super.init()
}
}
I 좋아해서 상술 한 클래스의 배열을 가지고 또한
var unsortedStopsData: [StopAttributes] = [StopAttributes]()
를 I은 이 배열에 약 3000 개의 항목을 채 웁니다. CoreData를 사용하여이 배열을 저장하고 싶습니다. 나는 그렇게처럼 내 데이터 모델을 정의했습니다 :
마지막으로, 내 관리 객체 클래스의 서브 클래스를 만들어 [StopAttributes]
로 unsortedStopsData
주조이 클래스 내에서 StopAttributes
내 배열을 절약 할 수. 제 질문은, 데이터 모델을 올바르게 설계하고 있습니까? 안되면 조언 좀 해줄 수 있니?
귀하의 설명을 이해 한 결과 위도, 경도 및 상태에 대한 속성을 내 엔터티에 추가하여 3000 개의 값으로 이루어진 전체 배열을 가져 오지 않고 그 중 하나를 통해 StopAttributes의 특정 인스턴스를 검색 할 수 있어야합니다. 맞지? 그렇다면 관계 나 가져온 속성에서 무엇인가를 정의해야합니까? 내 생각 엔 가져온 속성을 추가하는 것입니다. –
세 가지 모두를 사용하여 데이터를 필터링해야하는 경우 (모두 동시에 필요하지는 않음) 그렇다면 세 가지 모두가 필요합니다. 어떻게 든이 관계가있는 다른 엔티티가 없으면 관계가 필요하지 않습니다. 적어도 지금까지 요구 사항에 대한 설명을 기반으로 가져온 속성도 필요하지 않습니다. –