在搜索模型文件的路径时,为什么扩展名为"momd"而不是"xcdatamodel"

VIR*_*GIL 45 core-data ios

我使用Core Data创建了一个Master-Detail应用程序.并且有一个简单的代码来获取Model文件的路径:

NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"Model" withExtension:@"momd"];
Run Code Online (Sandbox Code Playgroud)

我不知道为什么扩展名不是"xcdatamodel"而是"momd".

有人知道答案吗?

Amy*_*all 139

mommomd文件被编译的版本xcdatamodelxcdatamodeld文件.

有关编译过程如何工作的信息(第31页).引用文档:

数据模型是部署资源.除了模型中实体和属性的详细信息之外,您在Xcode中创建的模型还包含有关图表的信息 - 其布局,元素颜色等.在运行时不需要后一个信息.使用模型编译器编译模型文件momc,以删除无关信息并使资源的运行时加载尽可能高效.

  • @VIRGIL,如果你的问题是正确的,你应该接受这个答案. (36认同)
  • @khunshan"mom"代表_managed object model_,"momd"代表_managed object model document_. (17认同)
  • 妈妈和妈妈代表什么. (3认同)