- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
iOS开发规范
命名
本文推荐驼峰法,也是Objective-C社区的标准。?
驼峰法分小驼峰法和大驼峰法。小驼峰法:除第一个单词之外,其他单词首字母大写。大驼峰法相比小驼峰法,大驼峰法把第一个单词的首字母也大写了。
2. 类命名
类名(不包括类别和协议名)应该用大写开头的大驼峰命名法。类名中应该包含一个或多个名词来说明这个类(或者类的对象)是做什么的。
在应用级别的代码里,尽量不要使用带前缀的类名。每个类都有相同的前缀不能提高可读性。不过如果是编写多个应用间的共享代码,前缀就是可接受并推荐的做法了(型如 JKPhotoBrowser )。
示例1:
@interface?ImageBrowseView :UIView
@end
示例2:(带前缀JK)
@interface?JKPhotoBrowser :UIView
@end
3. 类别命名
类名+标识+扩展(UIImageView +HP+Web)
例:如果我们想要创建一个基于UIImageView 的类别用于网络请求图片,我们应该把类别
放到名字是UIImageView+HPWeb.h的文件里。UIImageView为要扩展的类名,HP为专属标
识,Web为扩展的功能。
类别的方法应该都使用一个前缀(型如hp_myCategoryMethodOnAString ),以防止Objective-
C代码在单名空间里冲突。如果代码本来就不考虑共享或在不同的地址空间(address-
space),方法命名规则就没必要恪守了。
类别HPWeb头文件,UIImageView+HPWeb.h如下:
@interface?UIImageView (HPWeb)
- (void)hp_setImageWithURLString:(NSString?*)urlStr;
@end
4. 方法命名?
方法使用小驼峰法命名, 一个规范的方法读起来应该像一句完整的话,读过之后便知函数
的作用。执行性的方法应该以动词开头,小写字母开头,返回性的方法应该以返回的内容
开头,但之前不要加get。
示例:
- (void)replaceObjectAtIndex:(NSUInteger)index withObject:(id)anObject;
(instancetype)arrayWithArray:(NSArray?*)array;
如果有参数,函数名应该作为第一个参数的提示信息,若有多个参数,在参数前也应该有
提示信息(一般不必加and)
?一些经典的操作应该使用约定的动词,如initWith,insert,remove,replace,add等等。
5. 变量命名?
变量名使用小驼峰法, 使变量名尽量可以推测其用途属性具有描述性。别一心想着少打几
个字母,让你的代码可以迅速被理解更加重要。
5.1 类成员变量:
成员变量用小驼峰法命名并前缀下划线,Objective-C 2.0,@property 和 @synthesize 提供
了遵守命名规范的解决方法
示例:
@interface?ViewController?()
@property?(nonatomic,strong)NSMutableArray? ? *dataArray;
@property?(nonatomic,strong)UITableView?? ? ? *tableView;
@end
@implementation?ViewController
@end
5.2 一般变量命名?
示例:
NSMutableArray? *ticketsArray = [NSMutableArrayarrayWithCapacity:0]; ? ?
NSInteger?numCompletedConnections =3;
5.3 常量命名?
常量(预定义,枚举,局部常量等)使用小写k开头的驼峰法,比如kInvalidHandle ,?
kWritePerm?
示例:
#define kRunAnnotationStartPointTitle ? ? @“起点
typedef?NS_ENUM?(NSInteger,RunGoalTypeE){
? ? kRunGoalTypeNone ? ? ? =?0, ? ?//无目标
? ? kRunGoalTypeTime ? ? ? =?1, ? ?//以时间为目标
? ? kRunGoalTypeDistance ? =?2, ? ?//以距离为目标
? ? kRunGoalTypeCalori ? ? =?3, ? ?//以消耗卡路里为目标
};
NSString?*const?kGroupInfoName =@name;
6. 图片资源文件命名?
先看下新浪微博app图片资源命名方式,
文档评论(0)