为了提供一些背景信息,我是 iOS/Objective-C 的新手,具有 Web 开发(Ruby/JS/C#)背景。我了解这些类是如何工作的,但我不明白为什么最初的实现者编写这两个类 (NSKeyedArchiver
和NSKeyedUnarchiver
) 而不是将编码和解码逻辑合并到一个类中。
阅读抽象类NSCoder
a的 Apple 文档NSCoder
具有编码和解码的方法。我唯一能想到的是代码很长,所以最初的实现者把它分成了2个......在我看来,开发人员只使用一个类会更方便,但也许我'我错过了一些细微的差别。那么这有什么历史原因吗?NSCoder
它定义了编码/解码API,但意味着被分成编码器/解码器,这是一种“方便”吗?我是否误解了 aNSCoder
应该做什么?