IOS编码规范(命名规范)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Z1591090/article/details/85388453

⼀一.命名规则
命名总则:
1.使⽤用驼峰法命名,命名清晰明了,要做到⾃自描述,不能省略,部分cocoa通 ⽤用缩略词能够缩写。

  1. Objective – C不⽀支持名字命名空间,所以某些命名要加项⺫⽬目前缀区别。
    需要加前缀的地⽅方: 全局变量,类名,全局函数,category(每个类别,函数都必须添加前缀)
    3.全局变量前缀为g+项⺫⽬目前缀
    4.常量以k开头。
    变量命名:
    1.局部变量命名
    a.做到⾃自描述,指针变量的星号指⽰示符应该紧靠变量。 良好的风格:
    UIButton *settingsButton;
    不良的风格:
    UIButton *setBtn; b.尽量的使用属性而非实例变量
    良好的风格:
    @interface someObject : NSObject @property(nonatomic, retain)NSString 不良的风格:
    @interface someObject : NSObject{ NSString *name;
    *name;
    c.对于foundation原始数据类型例如NSString, NSArray, NSNumber BOOL 等等,变量的命名不需要表明其类型。
    良好的风格:
    NSString *accountName; NSMutableArray *mailBoxes; BOOL isNeedLogin; 不良的风格:
    NSString *accountNameStr; NSMutableArray *mailBoxAry;
    如果变量不是以上常用的类型,则变量的命名就应该反映出自身的类型, 但有时仅需要某些类的一个实例的情况下,那么只需要基于类名进行命 名。
    例如:
    UIImage *perviewPanImage;
    NSProgressIndicator *uploadIndicator;

NSFontManager *fontManager; 多数情况下集合类型,如果为NSArray 或者 NSSet类型的变量需要使用 单词复数形式(不需要加类型),反之需要制定其类型。
良好的风格:
NSIndexSet *selectedMailBoxesIndexSet;
NSDictionary *messageDictionary;
局部变量不应该包含下划线。
消息名称命名格式:
[Name of associated class] + [Did | Will] + [UniquePartOfName] + Notification
良好⻛风格:
NSApplicationDidBecomeActiveNotification
NSWindowDidMiniaturizeNotification
NSTextViewDidChangeSelectionNotification
NSColorPanelColorDidChangeNotification

2.枚举命名(必须遵循)
使⽤用NS_ENUM⽅方式进⾏行枚举,命名⽅方式为枚举类型+枚举含义。 例如:
typedef NS_ENUM(NSInteger, UIViewAnimationCurve) {
UIViewAnimationCurveEaseInOut, UIViewAnimationCurveEaseIn, UIViewAnimationCurveEaseOut, UIViewAnimationCurveLinear
};
3.协议与代理(必须遵循)
协议和代理必须独⽴立⼀一个头⽂文件。
协议分类使⽤用:
a.如果⽤用于实现代理,命名规则为 (类名 + delegate) b.如果⽤用于功能扩展,命名规则为 (类名 + 功能说明) c.如果⽤用于抽象接⼜⼝口,命名规则为 (类名 + 功能说明 + interface) ⼀一个类如果要实现多个协议的时候,每个协议名拆到单独的⾏行。 协议内函数声明必须指定限定符

猜你喜欢

转载自blog.csdn.net/Z1591090/article/details/85388453