Objective-C常量键命名

时间:2011-03-07 15:21:11

标签: iphone objective-c naming-conventions

我对常数命名有点困惑。

kName
NameKey
NAME_KEY

绝对使用这些时装?

6 个答案:

答案 0 :(得分:2)

根据“可可编码指南”,使用常量创建的常量看起来像这样:

  

const常量的格式由以下声明举例说明:

     
    

const float NSLightGray;

  

查看指南click here

答案 1 :(得分:1)

我建议选择你自己的项目或公司前缀(如上面的NS或AV)并坚持下去。所以,如果你的前缀是AB:

  • ABMegaTopKey代表const变量
  • AB_MEGA_TOP_FLAG代表#defines

Apple使用不同的风格取决于我是谁编写项目的,以及编写项目的时间。

答案 2 :(得分:0)

kName用于字符串或变量常量。 NAME_KEY用于#define常量。

答案 3 :(得分:0)

kName是Apple风格,而NAME_KEY在其他语言中更为普遍。进行更多研究:k is hungarian notation

答案 4 :(得分:0)

我总是使用来自主要C背景的第三种风格,虽然我通常会为它们添加前缀,例如。

NSString* const JP_NAME_KEY = @"name";

答案 5 :(得分:0)

在库中命名常量中有一些可见的“文化”。

我通常在字面上声明常量,使用带有下划线的上部Camel来分隔较长的名称:

  • 带有组织代码的前缀
  • 然后使用库前缀(如果适用)
  • 然后按类型或类别加上前缀

    ORGConstantName

    ORGLibrary_ConstantName

    ORGLibraryType_ConstantName

    ORGLibraryCategory_ConstantName

它很冗长,但它避免了冲突,并且当常量仅适用于某个范围,类型,库或其他上下文时,它确实很清楚。

无论你处理什么,只要确保它是一致的。