2010-04-19 58 views
0

如果Apple不希望开发人员在iPhone SDK中使用私有API,为什么他们不做类似C#的“内部”关键字的任何Objective-C标记类和/或方法?如果API分散在多个二进制文件中,Apple可以将它们重构为专用的专用API二进制文件,以使其更容易。苹果为什么不让私人API无法访问?

+1

你确定这样的关键字存在吗? – SLaks 2010-04-19 01:00:29

+0

@Slaks - 是的。 @NSD - 来自你的另一个令人厌恶的评论。这是你如何增加价值的SO? – Howiecamp 2010-04-19 03:54:20

+0

@slacks你好像被误解了。 – Howiecamp 2010-05-07 02:23:00

回答

5

Objective-C没有C#的“内部”或Java的“最终”关键字的等价物。我认为这是与语言的动态性有关,任何这样的功能都可以很容易地解决。

另外关于iPhone SDK,所有库需要静态编译到应用程序中,不允许动态链接。因此,将功能设置为“内部”即使可能,也不会影响可见性。

0

简短的回答,他们不标记为私人,因为他们根本没有描述他们。

您不应该发送的消息不会出现在SDK中相应的.h文件中。

私人API通常是由人们使用类似二进制框架的类转储工具而不是通过读取标题找到的。