2

我见过一些这样写的代码:

@interface AViewController(Private)

我想知道(Private)在提交到 App Store 时这是否意味着什么?一般是什么意思?

4

3 回答 3

7

这是一个名为“私人”的类别。

查看 Objective-C 编程参考的类别和扩展章节

这意味着它是对 AViewControler 类的补充,为了方便起见,它被命名为“Private”。它可以被称为任何东西,甚至可以留空来创建类扩展。

您可以在自己的代码中创建应用程序可以调用的私有方法。这实际上是一种很好的做法,因为它表明了适当的封装(尽管在 Objective-C 中没有私有方法之类的东西)。如果您不希望您的应用被 App Store 拒绝,则不允许您在代码中使用 iOS 框架的私有方法。

于 2011-06-28T20:31:37.823 回答
2

(Private)在这种情况下,涉及面向对象编程的原则。

这不一定表示私有API,这将违反 Apple iPhone 开发者协议。

注意: App Store 审批是非常黑箱的,所以我不能保证这样的代码在审批过程中确实不会导致拒绝。

于 2011-06-28T20:26:51.577 回答
1

Private 只是在对象上定义类别的一种方式。对 Apple 来说意义不大,但我建议在向知名库(例如 FoundationFramework 中的库)添加类别时使用唯一名称。如果您的命名约定是 AV 的前缀,则添加这样的类别。

@interface AViewController(AVPrivate);

于 2011-06-28T20:28:41.657 回答