一卷旌收千骑虏,万全身出百重围。这篇文章主要讲述读Google Objective-C Style Guide 有感想相关的知识,希望能为你提供帮助。
Google Object -C style Guide 很不错,读了之后有些地方觉得还不错,特记录下来,加深印象
1.
方法类型 + 和 - 之后需要添加一个空格。
【读Google Objective-C Style Guide 有感想】2.
属性以内部变量以_开始
3.
方法调用[ ]
类名和参数名在左右括号里不需要添加空格。但是一个方法调用完之后在连续调用,就需要添加空格,如:[[[self alloc] initWithString:string] autorelease];
4. 函数方法名以小写开头,category的文件名用+比如"NSString+MyCategory.h "
category的名字应在类的后面添加一个空格,
如@interface NSString (MyCategory)
@end
5.
Dealloc方法放在最上面,方便释放变量。
6.
操作符和=号两边要添加空格。
7.
Protocols相关,在id和协议的名字之间不能添加空格
@interface MyProtocoledClass : NSObject<
NSWindowDelegate>
@private
id<
MyFancyDelegate>
delegate_;
- (void)setDelegate:(id<
MyFancyDelegate>
)aDelegate;
@end
8.
不需要在初始化的时候设置一个对象为0 或者设置为nil ,对象初始化的时候会自动设置为nil。
9.
对象的nil判断。
对一个nil对象发送消息是允许的,如果要判断nil,主要是用于逻辑相关,而不是为了防止程序崩溃。
10.
BOOL值的认识。
BOOL 是signed char ,它能有许多值,而不仅仅包含YES(1)
或者 NO(0), 平常确实要多注意。
11.
与属性相关联的变量必须以 _ 结尾 。
@interface MyClass : NSObject
@private
NSString *name_;
@property(copy, nonatomic) NSString *name;
@end
@implementation MyClass
@synthesize name = name_;
- (id)init
...
@end
12.
对NSString 的属性,一定要用copy:@property(copy, nonatomic) NSString *name;
推荐阅读
- Terraform 管理阿里云 VPC
- 通过self调用propery和直接调用propery的区别
- springboot线程池的使用和扩展
- mql相关知识
- Grafana--监控数据展示神器
- C++的内存分配问题
- jvm专题 - 1/3GC基础
- OpenStack Train(业务组件cinder装安装)
- WTL atlApp.h