OC编码规范

一、命名规范


1.:

(1)首字母大写,后续单词首字母大写。

(2)类名末尾要包含此类的类型,比如RootViewRootViewController


2.属性

(1)属性名称首字母小写,后续首字母大写;

(2)使用@property,要保持必要的空格,如:@property (nonatomic, strong)

(3)如果在@implementation内声明全局变量,则使用下划线前缀,局部变量不需要使用下划线前缀;

(4)禁止使用abc这样的变量命名,要见词达意;

(5)属性命名时,要将属性类型编写到属性名中,使读者看到变量名即可知道这是个什么类型的变量,比如:usersDictusersArray等。


3.方法:

(1)-或者+后加一空格;

(2)方法名首字母小写,后续单词首字母大写;

(3)参数名首字母小写,后续单词首字母大写;

(4)参数类型如果带有*号,则参数类型和*号之间加一空格;

(5)如果方法太长、参数过多,可以换行冒号对齐,方法调用也一样;

(6)非重写系统方法时,不要使用issetget前缀;

(7)可以使用 can,should,will等词来协助表达存取方法的意思,但不要使用dodoes

(8)不可以省略关键词;

(9)尽量让方法的命名读起来像一句完整的话,能够传达出方法的意思;


4.宏定义:

宏定义以k开头,第二个字母大写,后续单词首字母大写。


5.公共:

(1)单词尽量通俗易懂,避免引起歧义,具体表述要和实际功能保持一致;

(2)除了广为人知含义的缩写,比如infomsgUIHTTP这类以外,尽量不要使用单词缩写,要写全拼,不要担心方法太长,清晰最重要。


二、每一行的最大长度


Xcode > Preferences > Text Editing > Page guide at column:中将最大行长设置为100,过长的一行代码将会导致可读性问题。


三、缩进和大括号


1.统一使用四个空格作为缩进。如果以Tab来进行缩进控制,请在Xcode中设置Tab缩进为4个空格。

2.所有大括号另起一行。

3.if判断或者for循环中,就算仅有一行逻辑代码,也不能省略大括号的使用。


四、注释


1.注释很重要,过多过少都不合适,不能没有,也不能喧宾夺主。

2.变量、方法名前要加注释加空行,不要使用后置注释的方式。

3.方法内部,按照逻辑步骤分块,每块添加注释;

4.除了方法内部第一条注释以外,注释上部保留一空行,避免代码和注释混为一片。

5.头文件使用标准的多行注释格式,实现文件中仅使用双斜杠注释即可。

6.注意注释是为了让别人看懂,而不是仅仅你自己。


五、使用统一前缀


1.一个项目内根据实际意义定义前缀;

2.项目内所有源文件、资源文件(包含图片)统一使用前缀,避免项目间冲突;

3.源文件内部的宏定义同样需要使用统一前缀,如下;k +前缀 + 实际意义;


六、类头文件编写规范


1.宗旨:头文件是写给使用者看的,在满足使用者需求的前提下,头文件元素越少越好,将没有必要让使用者看到的元素放到实现文件中,这样处理,能够减少使用者的学习成本,而且减少使用错误率。

2.头文件内容添加顺序:

(1)版权注释
(2)头文件导入
(3)宏定义
(4)枚举定义
(5)协议定义
(6)类定义开始
(7)类所属变量定义
(8)类所属方法定义
(9)类定义结束

3.各个内容区之间都以一空行分割。避免代码一大片混在一起。

4.如果方法太多,可以使用#pragma mark对代码分区分块,方便阅读代码。


七、类实现文件编写规范


1.实现文件内容添加顺序

(1)版权注释
(2)头文件导入
(3)宏定义
(4)静态变量定义
(5)枚举定义
(6)类扩展定义开始
(7)类扩展的变量
(8)类扩展的方法
(9)类扩展结束
(10)类实现开始
(11)类实现方法
(12)类实现结束

2.各个内容区之间都以一空行分割。避免代码一大片混在一起。

3.类全局变量声明方式:以@property方式添加到类扩展定义中,不在@implementation中定义全局变量的方式。这样处理可以统一使用self点操作,对于全局变量的辨认度有大幅提高,

4.对于方法的封装,有几点规范:

(1)方法的单一职责:单个方法的职责尽量单一,尽量抽离公共逻辑,方法尽量复用。

(2)方法实现行数:一个方法的最大行数100行,如果一个方法的实现超过一百行,则说明需要进行逻辑拆分了。

(3)方法和方法之间要有一空行分割。

5.要使用#pragma mark将各个方法按照逻辑功能分区,公共方法单独分区。方便阅读和掌握代码结构。


八、#pragma mark格式


使用"#pragma mark - 内容"方式,此行上下都要留空行。


九、Block编写规范


1.除非必要,不要使用weakSelf。百分之九十九的情况不需要使用weakSelf,我们要自己维护好block的引用关系,让block适时释放。

2.跟之前大括号的规范一样,block中的大括号也要另起一行,^保留在原行末尾。

3.如果 block过于庞大,应该单独声明成一个变量来使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值