没有合适的资源?快使用搜索试试~ 我知道了~
iOS Objective-C 编码规文档

温馨提示


试读
14页
非常详细的iOS Objective-C编码规范,每一个单元都有详细的事例和解析。欢迎各位参考与实践。
资源推荐
资源详情
资源评论























iOS Objective C 编码规范
说明:这篇编码风格指南概括了 raywenderlich.com 的编码规范,可能有些删减或修改。
语言
使用 US 英语
应该:
UIColor *myColor = [UIColor whiteColor];
不应该:
UIColor *myColour = [UIColor whiteColor];
代码组织
在函数分组和 protocol/delegate 实现中使用#pragma mark -来分类方法,要遵循以下一般结构:
#pragma mark - Lifecycle
- (instancetype)init {}
- (void)dealloc {}
- (void)viewDidLoad {}
- (void)viewWillAppear:(BOOL)animated {}
- (void)didReceiveMemoryWarning {}
#pragma mark - Custom Accessors
- (void)setCustomProperty:(id)value {}
- (id)customProperty {}
#pragma mark - IBActions
- (IBAction)submitData:(id)sender {}
#pragma mark - Public
- (void)publicMethod {}
#pragma mark - Private
- (void)privateMethod {}
#pragma mark - Protocol conformance
#pragma mark - UITextFieldDelegate
#pragma mark - UITableViewDataSource
#pragma mark - UITableViewDelegate

#pragma mark - NSCopying
- (id)copyWithZone:(NSZone *)zone {}
#pragma mark - NSObject
- (NSString *)description {}
空格
缩进使用 4 个空格,确保在 Xcode 偏好设置来设置。(raywenderlich.com 使用 2 个空格)
方法大括号和其他大括号(if/else/switch/while 等.)总是在同一行语句打开但在新行中关闭。
应该:
if (user.isHappy) {
//Do something
} else {
//Do something else
}
不应该:
if (user.isHappy)
{
//Do something
}
else {
//Do something else
}
在方法之间应该有且只有一行,这样有利于在视觉上更清晰和更易于组织。在方法内的空白应该分离功能 ,
但通常都抽离出来成为一个新方法。
优先使用 auto-synthesis。但如果有必要,@synthesize 和 @dynamic 应该在实现中每个都声明新的一行。
应该避免以冒号对齐的方式来调用方法。因为有时方法签名可能有 3 个以上的冒号和冒号对齐会使代码更
加易读。请不要这样做,尽管冒号对齐的方法包含代码块,因为 Xcode 的对齐方式令它难以辨认。
应该:
// blocks are easily readable
[UIView animateWithDuration:1.0 animations:^{
// something
} completion:^(BOOL finished) {

// something
}];
不应该:
// colon-aligning makes the block indentation hard to read
[UIView animateWithDuration:1.0
animations:^{
// something
}
completion:^(BOOL finished) {
// something
}];
注释
当需要注释时,注释应该用来解释这段特殊代码为什么要这样做。任何被使用的注释都必须保持最新或被
删除。
一般都避免使用块注释,因为代码尽可能做到自解释,只有当断断续续或几行代码时才需要注释。例外:
这不应用在生成文档的注释
命名
Apple 命名规则尽可能坚持,特别是与这些相关的 memory management rules(NARC)。
长的,描述性的方法和变量命名是好的。
应该:
UIButton *settingsButton;
不应该:
UIButton *setBut;
三 个 字 符 前 缀应 该 经 常 用 在类 和 常 量 命 名, 但 在 Core Data 的 实 体名 中 应 被 忽 略。 对 于 官 方 的
raywenderlich.com 书、初学者工具包或教程,前缀'RWT'应该被使用。
常量应该使用驼峰式命名规则,所有的单词首字母大写和加上与类名有关的前缀。
应该:
static NSTimeInterval const RWTTutorialViewControllerNavigationFadeAnimationDuration = 0.3;
不应该:static NSTimeInterval const fadetime = 1.7;
属性也是使用驼峰式,但首单词的首字母小写。对属性使用 auto-synthesis,而不是手动编写@ synthesize
剩余13页未读,继续阅读
资源评论

- Micro902018-03-06挺不错的资源 值得推荐
- nianxj2016-09-21不错不错,支持

Sdfeidong似懂非懂
- 粉丝: 12
- 资源: 6
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


安全验证
文档复制为VIP权益,开通VIP直接复制
