【发布时间】:2012-05-12 15:25:48
【问题描述】:
在 Simperiums iOS/OSX 教程中你说,每个建模对象都应该继承自 SPManagedObject。
我还没有尝试过,但这不会导致 SQLite 数据库中的一个大表包含所有建模托管对象的所有字段的联合吗?
【问题讨论】:
标签: simperium
在 Simperiums iOS/OSX 教程中你说,每个建模对象都应该继承自 SPManagedObject。
我还没有尝试过,但这不会导致 SQLite 数据库中的一个大表包含所有建模托管对象的所有字段的联合吗?
【问题讨论】:
标签: simperium
是的,在底层,Core Data 会倾向于创建一个更大的表。一般来说,性能会更多地受到关系的影响,而不是继承: Using Parent Entity in CoreData Models
我们已经完成了与相当复杂的继承层次结构的集成,并且没有发现大量数据存在任何直接问题。
话虽如此,如果您需要对表结构进行更多控制,您可以避免为所有对象设置一个父对象,而是:
手动将 ghostData 和 simperiumKey 属性添加到要同步的对象中,并确保其类为 SPManagedObject(或确保其自定义类继承自 SPManagedObject),或
创建多个具有 ghostData 和 simperiumKey 属性的父实体,并从模型中有意义的部分继承这些父实体,具体取决于您希望如何构建基础表。
【讨论】: