为什么Objective-C没有命名空间?

zou*_*oul 12 namespaces objective-c

为什么Objective-C没有命名空间?这似乎是一个简单的功能,可以使一些类名更具可读性(AVMutableVideoCompositionLayerInstruction任何人?)并扼杀类名上的愚蠢字母前缀.这主要是因为向后兼容吗?实现名称空间比看起来难吗?

Jer*_*myP 11

我不知道答案,但我怀疑"它看起来比它看起来更难"可能是它.您必须以不破坏现有软件的方式在编译器和链接器中引入支持.虽然这显然是可能的(C++已经做到了),但据推测,工具链团队在他们的板块上有更高的优先级.例如,在最近我们有垃圾收集,GCD,块和Objective-C 2.0出现,所以我们不能说他们什么也没做.

命名空间支持是我非常喜欢看到引入Objective-C的一件事.