이것은 핵심 데이터에 대한 질문보다는 Apple의 디자인 결정에 대한 철학적 질문입니다.왜 코어 데이터를 미리 채워 넣기가 어렵습니까?
전 세계에서 왜 미리 채워 넣기가 어려운 모델 시스템을 사용하는 것이 유용한가요? 이점은 무엇입니까? 나는 당신이 당신의 프로그램이 sqlite 파일을 생성하고 그것을 수동으로 편집하게 할 수 있다는 것을 알고 있지만, 내가 말할 수있는 한 당신은 어떤 관계가 있다면 그것을 할 수 없다.
이 점을 레일에 사용 된 MVC 패러다임과 비교해 볼 수 있습니다. 레일의 모델은 코어 데이터와 비슷한 수준의 추상화를 제공하지만, 수동으로 (또는 스크립트를 통해) 데이터베이스에 원하는 것을 입력 할 수도 있습니다.
코어 데이터 문제는 다음과 같습니다. 레일이 여러 가지 편리한 방법을 유지하면서 데이터베이스에서 우수한 모델 추상화를 가질 수 있다는 것을 증명하는 것으로 보이기 때문에 가능한 장점은 그 기능을 제거하는 것입니다 제공? 핵심 데이터가 어떻게 든 더 효율적입니까? 미리 채우기에 포함 된 어려움은 다른 디자인 선택의 부작용 일 뿐이고, 그렇다면 왜 사전 채식을 고려하지 않았는가?
(나는 이러한 선택 뒤에 추론에 진정으로 관심이 있어요, 내 게시물을 제안 할 수 있지만, 정말 논쟁은 "코어 데이터 대 레일에서 모델"찾는 게 아니에요 면책 조항.)
데이터베이스 ("디지털 형식의 일반적으로 하나 이상의 용도로 구성된 데이터 모음")처럼 보입니다. 어쨌든, 그의 질문 중 어떤 것도 당신이 Core Data라고 부르는 것에 근거하지 않는 것처럼 보였습니다. 그는 처음에는 그것을 "모델 시스템"이라고 불렀습니다. – Ken
코어 데이터 인 "폐쇄 루프 시스템"에서도 사전 채우기가 일반적인 작업입니다. 그렇게하지 않고이 시스템을 만드는 이유는 무엇입니까? 또는 Apple이 자체적으로 만들고 싶지 않은 경우 라이센스 계약에 Core Data 스키마의 역 엔지니어링을 금지하는 조항이있는 이유가 있습니다. 따라서 진취적인 개인이 직접 이러한 도구를 작성할 수 있습니까? –
@Evan Cordell - Apple은 부분적으로 미리 채우기를위한 도구를 만들지 않았습니다. 왜냐하면 그렇게하기가 쉽기 때문입니다. 내 대답보기 : http://stackoverflow.com/questions/2248363/portability-of-core-datas-sqlite-file-between-os-x-and-iphone-os/2248463#2248463 여기 : http :// /stackoverflow.com/questions/1264382/how-do-i-initialize-a-store-with-default-data-in-a-coredata-application/1266588#1266588. 심지어 iTunes U에서 내 iPhone 과정의 비디오에서 ~ 15 분 안에이 작업을 수행하는 방법을 보여줍니다. http://deimos.apple.com/WebObjects/Core.woa/Browse/matcmadison.edu.3989485784.03989485786 –