OC学习—命名规范

大驼峰与小驼峰

  • 大驼峰
  1. 每个单词的首字母都大写
  2. 首个单词也大写
  3. 不使用下划线或其他分隔符
  4. 适用于类名、结构体名、协议名
  5. 文件名
objectivec 复制代码
UserManager
NetworkRequestHandler
MYCustomButton
  • 小驼峰
  1. 每个单词的首字母都大写
  2. 首个单词的首字母小写
  3. 不使用下划线或其他分隔符
  4. 适用于方法名、变量名、属性名、参数名
objective-c 复制代码
userName
loadDataFromURL
isLoggedIn
completionHandler

类与协议的命名

  • 使用大驼峰法
  • 加前缀防止冲突:如NS、UI、AF、MY等

示例:

objectivec 复制代码
@interface MYNetWorkManager : NSObject
@end
  
//

@protocal MYDownloadDelegate <NSObject>
@end

方法命名

  • 使用小驼峰法命名
  • 方法应该表达动作或者行为
  • 参数名要体现含义、不要简写
  • 使用语义清晰、自然语言风格的多段方法名

示例:

objectivec 复制代码
- (void)loadDataFromURL:(NSURL *)url withCompletion:(void (^)(NSData *data))completion;
- (BOOL)saveUser:(User *)user error:(NSError **)error;

变量与属性命名

  • 使用小驼峰法命名
  • 属性不要以下划线开头
  • 实例变量通常加_前缀(在实现文件中)

示例:

objectivec 复制代码
@property (nonatomic, strong) NSString *userName;
@property (nonatomic, assign) NSInteger retryCount;
objectivec 复制代码
@implementation MYClass {
    NSString *_internalState;
}

常量命名

  • 使用 k 前缀(旧风格)或使用全局命名空间前缀(现代风格)
  • 全部大写,单词间用下划线分隔(用于 #define
  • 对象常量建议使用 NSString *const
objectivec 复制代码
static NSString *const MYDefaultUserName = @"Guest";
#define kMaxRetryCount 3

特殊

  • 枚举值:使用前缀加驼峰
  • 文件名:与类名一致
  • Category:与Catogory名一致
  • Blocks命名:以Block结尾
相关推荐
嘉陵妹妹7 分钟前
深度优先算法学习
学习·算法·深度优先
乖乖是干饭王1 小时前
Linux系统编程中的_GNU_SOURCE宏
linux·运维·c语言·学习·gnu
待什么青丝2 小时前
【TMS570LC4357】之相关驱动开发学习记录2
c语言·arm开发·驱动开发·单片机·学习
行云流水剑2 小时前
【学习记录】如何使用 Python 提取 PDF 文件中的内容
python·学习·pdf
liucan2333 小时前
JS执行速度似乎并不比Swift或者C语言慢
前端·ios
虾球xz3 小时前
CppCon 2015 学习:CLANG/C2 for Windows
开发语言·c++·windows·学习
蓝婷儿4 小时前
6个月Python学习计划 Day 17 - 继承、多态与魔术方法
开发语言·python·学习
持续前进的奋斗鸭4 小时前
Postman测试学习(1)
学习·postman
hello kitty w5 小时前
Python学习(7) ----- Python起源
linux·python·学习
一叶知秋秋5 小时前
python学习day39
人工智能·深度学习·学习