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结尾
相关推荐
酿情师9 小时前
yihan:一款面向连续网页学习的智能侧边栏插件
学习·学习方法·工具·学习工具
瞎某某Blinder10 小时前
DFT学习记录[6]基于 HES06的能带计算+有效质量计算
python·学习·程序人生·数据挖掘·云计算·学习方法
love在水一方11 小时前
VLN 入门学习计划 —— 基于 InternNav
学习
red_redemption14 小时前
自由学习记录(175)
学习
nashane14 小时前
HarmonyOS 6学习:画中画(PiP)状态同步与场景化实战指南
学习·pip·harmonyos·harmonyos 5
_李小白15 小时前
【android opencv学习笔记】Day 8: remap(像素位置重映射)
android·opencv·学习
勤劳的进取家15 小时前
数据链路层基础
网络·学习·算法
美狐美颜SDK开放平台15 小时前
多场景美颜SDK解决方案:直播APP(iOS/安卓)开发接入详解
android·人工智能·ios·音视频·美颜sdk·第三方美颜sdk·短视频美颜sdk
d111111111d15 小时前
直流电机位置式 PID 控制 和 舵机的区别
笔记·stm32·单片机·嵌入式硬件·学习
y = xⁿ16 小时前
Redis八股学习日记:布隆过滤器
数据库·redis·学习