【问题标题】:Objective-C Class Prefix for a library APIs库 API 的 Objective-C 类前缀
【发布时间】:2013-09-16 20:24:28
【问题描述】:

假设我正在为一家名为“MyCompany”的公司及其唯一的公司名称创建一个 SDK。所有库类都以“MC”为前缀,只有主 API 库类“MyCompany.h”不是。这是合适的还是我也应该在那个类前面加上前缀?

【问题讨论】:

  • 我觉得没问题。使用前缀的主要原因是避免与引用的类发生冲突,因此除非名称非常通用,否则应该没问题。

标签: ios objective-c conventions


【解决方案1】:

我认为这是合适的。为了确保这一点,我会下载一些流行的 SDK,看看它们的作用。像 Facebook 和其他类似的网站。

另外,请注意,从技术上讲,您的类前缀应至少为 3 个字符,除非您是 Apple。每苹果。不过,我认为没有多少人使用该指南。

编辑:我编辑这个是因为我不喜欢我的第一个答案...

【讨论】:

  • 值得指出的是,建议第三方开发者使用三字符前缀的原因是为了避免与苹果未来可能引入的框架发生命名冲突。
【解决方案2】:

MyCompany.h 不 -- 不应 -- 定义任何可链接符号。它应该 #import 其余框架/库的标题。

因此,没有冲突,因为没有定义实际的无前缀符号;例如,不应该有 MyCompany 类。

【讨论】:

  • 你能详细说明一下吗,这是我在 Objective-C 环境中的第一个项目,我很想知道为什么我不应该定义任何可链接符号,也不应该使用实现 MyCompany 的 MyCompany.m 类。 h 方法(调用内部 API)。
【解决方案3】:

您提议的命名方案与 Apple 的做法以及许多第三方库的做法相匹配。

我认为这听起来是一种合理的方式来命名您的图书馆。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-07-22
    • 2011-02-13
    • 1970-01-01
    • 2014-01-18
    • 1970-01-01
    • 2011-07-08
    • 1970-01-01
    相关资源
    最近更新 更多