|
|
1
9
苹果关于 object graphs 有这样的说法:
我的解释是,如果你想存储简单的 价值观 ,序列化(例如使用NSDictionary)是一种很好的方法。如果你想储存一个 对于保留唯一性和易变性的任意类型,使用归档(例如,使用NSCoder)是最好的选择。 你可能还想看看苹果的 Archives and Serializations Programming Guide for Cocoa |
|
|
2
5
我是 不 非常喜欢使用NSCoding/NSCoder/NSArchiver(我们需要选择一个名称!)将对象图序列化为文件。
|
|
|
3
2
NSCoding在某些情况下是可以的:如果你只是在做一些快速简单的事情(尽管你确实需要编写很多代码——每个类有两个方法可以序列化)。如果您不担心与其他应用程序的兼容性,也可以这样做。
您还可以创建自己的基于XML的文件格式,并使用NSXMLDocument API和friends对其进行读/写。这实际上并不比使用属性列表多做多少工作。 |
|
|
4
1
我想你有点困惑,NSDictionary是一种数据结构,它也碰巧实现了NSCoding协议。因此,本质上,您可以将所有数据放入NSDictionary并在以后对其进行编码,也可以实现NSCoding协议并使用NSCoder API对对象树进行编码。根据传入EncoderWithCoder:方法的NSCoder对象的类型,是编码的输出。 |
|
|
KanKonga · 为什么这个swift代码没有显示在文本字段中? 3 年前 |
|
|
Community wiki · 目标的Xcode构建阶段的自动更新? 3 年前 |
|
|
Anton Timonin · 如何正确地将动态pod库更改为静态? 3 年前 |
|
|
Igor · 在OSX中,捆绑包的用户首选项在哪里? 3 年前 |
|
|
narner · 从Swift包创建Cocoapods框架 3 年前 |