命名
常量和枚举添加3个(2个是预留给Apple的)大写字符做为前缀
如果方法返回接收者的某个属性,则以属性名称作为方法名。如果方法没有间接地返回 一个或多个值,您也无须使用”get“这样的单词。
反例:
正例:
不要使用”and“来连接两个表示接受者属性的关键字。
虽然下面的例子使用”and“这个词感觉还不错,但是随着创建的方法所带有的关键字越来 越多,这种方式会引起问题
正例:
反例:
只有当方法间接地返回对象或者数值,您才需要在方法名称中使用 get”。这种格式只适 用于需要返回多个数据项的方法。
|
|
方法名称的开头应标识出发送消息的对象所属的类
|
|
要求委托代表其他对象执行某件事,使用“should”
|
|
常量
NS_ENUM枚举类型定义一群相互关联的整数值常量。枚举项以枚举类型为前缀
|
|
NS_OPTIONS定义一组相互关联的位移枚举常量。位移枚举常量是可以组合使用的。枚举项以枚举类型为前缀
|
|
使用 const 来创建浮点值常量。如果某个整数值常量和其他的常量不相关,您也可以使用 const 来创建,否则,则应使用枚举类型。
|
|
大写字符表示预处理字符
|
|
使用常量来代替字符串字面值和数字。常量应该用 static 声明为静态常量,而不要用 #define,除非它明确的作为一个宏来使用。
正例:
反例:
在头文件将常量暴露,在实现文件中为它赋值
|
|
Notification消息使用全局的 NSString 对象进行标识
[Name of associated class] + [Did | Will] + [UniquePartOfName] + Notification
|
|
异常使用全局的 NSString 对象来标识
[Prefix] + [UniquePartOfName] + Exception
|
|
+(void)initialize必须判断class类型或使用dispatch_once防止执行多次