写objC程序有一段时间了,接触的头几天便到处找编程规范,至今除了google和apple的规范外,其它的也零星见过一些.老实说,google和apple的规范均不怎么样,很多场景都没有解决方案,并且两者也有冲突的地方.我综合这些规范,修改和补充如下,后续不断增加:
1.interface用I前缀,protocal用P前缀,确实是delegate则用delegate作后缀.
2.protocol和interface定义在同一.h文件
3,成员变量用_前缀.
4.宏,enum,const均用大写_,不用k开头驼峰法
5.禁止通过setXxx,xxx形式调用property,一律用.表示法
6.IBOutlet禁止用property,完全没必要
7.不供外部访问的成员变量禁止声明为perperty,内存管理该retain就retain,然后release(即禁止self.引用实例变量,除非是父类实例变量)
8.禁止在@implementation中声明成员变量
9.容器命名如arrXxx,dicXxx,setXxx,坚决禁止s复数后缀(像sb似的),
10.广泛采用通用缩写,如sys,msg,mgr,calc,rcv,tmp(temp),flg(flag),
11.广泛使用匈牙利命名法.