命名规范

1. 分类(类别)命名

与类名相同,此处需添加要扩展的类名和“+”;

例如:NSString+URLEncoding

2. 协议(代理)命名

与类名相同,此处需添加“Delegat”后缀

例如:UITableViewDelegate

3. 方法命名

首字母小写,之后的每个单词首字母都大写

例如:- (void)setupPostWithValue:(int)value

4. 参数命名

首字母小写,之后的每个单词首字母都大写,如果方法内参数过多,每个参数占用一行,冒号对齐。

例如:- (void)writeFisrtNumber:(NSString *)firstStr

withNextNumber:(NSString *)nextStr

withLastNumber:(NSString *)lastStr

5. 对象命名

对象命名需要用修饰+类型的方式

例如:titleLabel或titleLbl、confirmButton或confirmBtn。

6. 图片命名

使用英文,全部小写,添加模块名作为前缀,防止冲突。

(模块名)_(功能属性简写+描述)@2x.png (2x代表2倍像素,3x代表三倍像素)

例如:被选中的按钮图片:bg_btn_selected@2x.png、bg_btn_selected@3x.png

导航条背景图片:bg_nav_bar@2x.png、bg_nav_bar@3x.png

导航条返回按钮图片:bg_nav_back_normal@2x.png bg_nav_back_normal@3x.png

7. 分组命名

使用英文,首字母大写,之后每个单词的首字母军大写。

每个分组使用模块的名字。

使用的开源库统一放在“Library”分组下。

使用的公共组件统一放在“Common”分组下。

使用资源统一放在“Resource”分组下,包括文件、音频等。

代码规范

1. 避免在程序中出现常量,当使用次数较多时应以宏定义的形式来替代,对于常量的命名*好在前面加上字母k。

2. 使用MVC设计模式。

3. 添加必要的注释。

4. 代码后面的“{”不要单独占一行。

5. 相同的逻辑方法定义避免出现在多个地方,尽量将公用的类,方法抽取出来。

6. 多使用#pragmamark – name 来进行分组。

7. 方法之间使用两个空行分隔。

8. 合理的使用宏定义。