类前缀(Class Prefix),文件命名、类命名、方法命名等都可能用到。就如OC的命名大部分都是“NS”(NS——NextStep)开头一样。我们的命名也可以带上自己的标识写在名称前面,用以区分项目、开发者、框架等。这里的前缀名为:LY(2位字母比较好看,但推荐使用3个以上字母,因为苹果自身是使用2位字母的,万一苹果发布新框架,然后和你的命名同名了,那就尴尬了……)。
类后缀(Class Suffix),文件命名、类命名、方法命名等都可能用到。类是根据父类来命名,用来说明这个类是什么类。UIView 后缀添加“View”、UIButton 后缀添加“Button"、UILabel 后缀添加“Label",是ViewController的就要在名字后面加上“ViewController”。
命名要领:
1.清晰性(简明,可读性高,一个名字就能表明自己的身份)
2.一致性(尽可能与Cocoa编程接⼝命名保持一致,不然别人看你的代码就像一门新语言)
一、文件和类命名
大驼峰命名法,所有单词的第一个字母大写。可加前缀(Prefix),如:LYUser(用户)、LYNetWork(网络)、LYViewController(视图控制器)等。
举例展示,看项目或个人需要自行Add或Create。
1.公共文件
公共模型:CommonModel。继承于NSObject,通用设置和方法都可以放在该类,不需要加前缀(Prefix)方便所有项目使用。
公共视图控制器:CommonViewController。继承于UIViewController,通用设置和方法都可以放在该类,不需要加前缀(Prefix)方便所有项目使用。
注:Common(普通的、公共的、共有的),在ThinkPHP里面的意思也是差不多的。也可以使用Base代替。
2.管理文件
日历管理:CalendarManager。继承于NSObject,所有日期(Date)时间(Time)配置、时间格式转换、时间计算查询等操作方法都可以写在这里。不需要加前缀(Prefix)方便所有项目使用。
颜色管理:ColorManager。继承于NSObject,所有颜色配置、颜色格式转换、夜间模式设置方法都可以写在这里。不需要加前缀(Prefix)方便所有项目使用。
注:Manager(处理者、管理者),也可以使用Helper代替,OC里面面向对象管理。
3.其他文件
用户文件:LYUser。定义项目角色的属性,设置用户的注册、登录、忘记密码、修改密码、资料获取和资料编辑等。
单例文件:LYSingleton。定义项目临时存储属性,设置单例属性,方便临时保存数据。
注:OC里面面向对象的一个对象,这种对象在项目中是一个重要角色,所以直接命名。
二、宏定义命名
全局宏定义使用大写开头、局部宏定义小写开头并区分类型。全局宏定义,放在 config.h 文件或者Macros.h文件;局部宏定义放在需要用的文件的.h文件顶端。
1.全局宏定义
1.1分类名全部大写,比如:COLOR(颜色)、URL(地址)、FONT(字体类型)、TEXT(文本)、STRING(字符串);
1.2分类与分类之间用下划线间隔;
1.3分类名分级由大到小。
例如:
2.局部宏定义
匈牙利命名法,以k开头,后接大驼峰命名法。
例如:
注:k-恒定值 用在key键、恒定字符串That's a general programming notation not specific to Objective-C (i.e. Hungarian Notation) and the "k" stands for "constant".
三、常量命名
匈牙利命名法,以k开头,后接大驼峰命名法;或者以k开头,后接大驼峰命名法,中间加下划线“_”间隔。
例如:
四、变量命名
小驼峰命名法。除第一个单词外,其它单词首字母大写。要突出属性特性,必要时要加上类后缀(Class Suffix)。
1.全局变量
关键字:@property (nonatomic, strong),外部可以访问。
例如:
2.局部变量
在.h或.m内声明,并以下划线“_”开头。
例如:
五、枚举命名
大驼峰命名法,可加前缀(Prefix)。关键字:typedef NS_ENUM
例如:
六、别名命名
大驼峰命名法,可加前缀(Prefix)。关键字:typedef
例如:
七、类别命名
大驼峰命名法,可加前缀(Prefix)。关键字:Category
例如:
八、方法命名
小驼峰命名法。setting方法要写上set,getting方法可以省略get,符合Cocoa编程接⼝命名规则。传入参数统一小驼峰命名。方法名称要能简明表达方法的作用,方便阅读调用。
九、常用命名
助手:Helper
类库:Classes / Libraries
管理:Manager
资源:Resources
工具:Tool / Utils
账号:Account
密码:Password
头像:Avatar
首页面、我的页面、设置页面:Home、Me、Settings
关键字:Keywords