《Effective Objective-C 2.0 》 阅读笔
2016-03-18 本文已影响45人
dibadalu
第19条:使用清晰而协调的命名方式
1. 方法命名
*** 规则 ***
- 如果方法的返回值是新创建的,那么方法名的首个词应是返回值的类型,除非前面有修饰语。如:
+ stringWithString - lowercaseString - intValue。
- 属性的存取方法不遵循上面的命名方式。
- 应该把表示参数类型的名词放在参数前面,如:
- (void)getCharacters:(uinichar*)buffer range:(NSRange)aRange;
- 如果方法要在当前对象上执行操作,那么就应该包含动词;若执行操作时还需要参数,则应该在动词后面加上一个或多个名称。
- hasPrefix: - isEqualToString:
- 不要使用str这种简称,应该用string这样的全程。
- Boolean属性应加is前缀。如果某方法返回非属性的Boolean值,那么应该根据其功能,选用has或is当前缀。
/* Boolean属性叫做 enabled */ - setEnabled: - isEnabled /* 返回非属性的Boolean值 */ - hasPrefix: - isEqualToString:
- 将get这个前缀留给那些借由“输出参数”来保存返回值的方法,比如说,把返回值填充到“C语言式数组”里的那种方法就可以使用这个词做前缀。
- (void)getCharacters:(uinichar*)buffer range:(NSRange)aRange;
2. 类与协议的命名
应该为类与协议的名称加上前缀,而且命名方式应该协调一致。
要点
- 起名时应遵从标准的Objective-C命名规范,这样创建出来的接口更容易为开发者所理解。
- 方法名要言简意赅,从左至右读起来要像个日常用语中的句子才好。
- 方法名里不要使用缩略后的类型名称。
- 给方法起名时的第一要务就是确保其风格与你自己的代码或所要集成的框架相符。