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结尾
相关推荐
河铃旅鹿42 分钟前
Android开发-java版:布局
android·笔记·学习
奋斗的牛马1 小时前
FPGA--zynq学习 PS与PL交互(二) HP接口
单片机·嵌入式硬件·学习·fpga开发·信息与通信
华清远见成都中心1 小时前
分享一个驱动开发工程师学习路线图
驱动开发·学习
im_AMBER1 小时前
React 18
前端·javascript·笔记·学习·react.js·前端框架
d111111111d4 小时前
STM32中为什么会有APB1和APB2两个外设有什么区别
笔记·stm32·单片机·嵌入式硬件·学习
化作星辰4 小时前
深度学习_神经网络中最常用的学习率优化算法
深度学习·神经网络·学习
71-35 小时前
C语言练习题——判断水仙花数(0-100000)
c语言·笔记·学习
FAREWELL000755 小时前
Lua学习记录(3) --- Lua中的复杂数据类型_table
开发语言·学习·lua
Broken Arrows5 小时前
排查网络问题的一些工具的作用和常用使用方法
linux·网络·学习
Digitally6 小时前
如何在不使用iTunes的情况下在电脑上访问iPhone文件
ios·电脑·iphone