我很好奇使用 NSCoding 对 objective-c 中的对象进行编码并将它们写入磁盘可能比简单地将持久性对象写入磁盘有什么优势。在 I/O 或磁盘空间使用方面是否有性能提升?
Best Answer-推荐答案 strong>
嗯,大多数 NSCoding 实现都会正确处理对象图;即,如果您对已经编码到编码器的成员对象进行编码,它将不会再次编码。解码将正确恢复对象图(因此解码的目标对象有多个入站引用)。您还可以获得所有内置的辅助编码函数(用于原始类型和对象)。
除此之外,NSCoder 只是持久性对象生成器,因此您最终会做类似的工作,只是没有 Apple 处理的烦恼和常见情况。你能写什么持久化生成器,不会重复大量的 NSCoder 功能?
关于objective-c - 使用 NSCoding 编码对象或简单地将数据写入文件的优缺点,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/4370172/
|