我一直在使用 Core Data 开发几个 iOS 应用程序,它是一个很好的框架。但是,我遇到了一个问题,即我们或多或少地跨多个平台分发对象(同步)。Web/数据库服务器后端和移动设备。
虽然直到现在还没有成为问题,但 Core Data 使用的数据模型的静态特性让我有点卡住了。基本上,所要求的是一个动态表单系统,可以在服务器上创建表单并将其传播到设备。我知道使用一组表执行此操作的技术,例如:
- 表格
- 字段表
- Forms 表的实例
- 实例值表
只是将所有东西连接在一起。然而,我想知道的是,是否有一个替代核心数据的系统(上面的东西直接与 SQLite 数据库对话)将允许更动态的对象图。如果有在运行时修改模式的选项,即使是标准的 ORM 也会很好。我想走这条路的主要原因是为了提高性能,因为我不希望实例值表随着条目(在本地设备或服务器上)爆炸。
我的另一个选择是在 iOS 设备上拥有静态架构(对象图),但在服务器端有一个转换层,它获取正确的对象、填充属性并将其保存到正确的表中。然后,当设备开始同步时,它会执行相反的操作并将其分解为多个实例。虽然这可以避免服务器出现臃肿的实例值表,但它仍然可能是设备上的问题。
任何建议表示赞赏。