自动 synthesize 实例变量
Tip
只运行在 iOS 下的代码,优先考虑使用自动 synthesize 实例变量。
synthesize 实例变量时,使用 @synthesize var = var_; 防止原本想调用 self.var = blah; 却不慎写成了 var = blah;。
不要synthesize CFType的属性 CFType应该永远使用@dynamic实现指示符。 尽管CFType不能使用retain属性特性,开发者必须自己处理retain和release。很少有情况你需要仅仅对它进行赋值,因此最好显示地实现getter和setter,并作出注释说明。 列出所有的实现指示符 尽管@dynamic是默认的,显示列出它以及其它的实现指示符会提高可读性,代码阅读者可以一眼就知道类的每个属性是如何实现的。
1. // Header file
2. @interface Foo : NSObject
3. // A guy walks into a bar.
4. @property(nonatomic, copy) NSString *bar;
5. @end
6.
7. // Implementation file
8. @interface Foo ()
9. @property(nonatomic, retain) NSArray *baz;
10. @end
11.
12. @implementation Foo
13. @synthesize bar = bar_;
14. @synthesize baz = baz_;
15. @end
原文: https://zh-google-styleguide.readthedocs.io/en/latest/google-objc-styleguide/features/
