我正在尝试为 iOS 应用程序的简单数据模型实现持久性。它是一种数据库,但数据量很小(200-500 个条目)。我认为核心数据在这里是没有选择的。
数据模型看起来像这样(目前我使用NSDictionary
with NSArray
):
// Note: NSStrings and NSNumbers are simplified for readability (no @)
@{ "Companys" : @[
@{ "ID" : 1,
"Company name" : "ABC Inc.",
"Website" : "http://www.abc.com"
},
@{ "ID" : 2,
"Company name" : "XYZ Inc.",
"Website" : "http://www.xyz.com"
},
@{ "ID" : 3,
"Company name" : "123 Inc.",
"Website" : "http://www.123.net"
},
// ... about 90 companies
],
"Employees": @[
@{ "ID" : 1,
"First name" : "John",
"Last name" : "Doe"
},
@{ "ID" : 2,
"First name" : "David",
"Last name" : "Green"
},
// ... about 500 employees
]
}
现在我面临关系问题(哪些员工在哪家公司工作)。我想将和添加NSArray
到NSDictionary
拥有该公司员工 ID 的公司。但不知何故,我害怕表现不佳,因为每次我想获得员工工作的公司时,我都需要列举所有公司。
有没有更好的解决方案来保存此类数据?我认为使用 SQLite 或 Core Data 会过度设计并且会花费太多的开发时间......
编辑: 请不要在您的评论和答案中建议核心数据。Core Data 不是一个选项,因为数据是非常静态的,只有很少的更改,并且不需要排序。iCloud 同步也可能是一种选择。Core Data 在使用 iCloud 时有很多错误...