我对 ObjC 还是很陌生。我注意到创建你的所有地方都是非常标准的
@interface myObj : NSObject {
id delegate;
NSDictionary *dict;
}
进而
@property (nonatomic,retain) NSDictionary *dict;
@property (retain) id delegate;
- 例如。我知道 @property 的自动代码生成 + 更清晰的定义是多么有用,这要归功于 Apple 的Declared Properties页面。然而,我不明白的是,为什么人们同时做这两个标准是标准的——声明他们的属性,然后将它们再次放在{大括号}中。
我的意思是,如果我有一个类,其中我希望某些变量具有自动 getter/setter 而有些不具有,那么我会理解为我的常规变量设置 {} 块,然后只创建 @property/@synthesize 语句只是那些我想要添加功能的特定变量;但是,为什么在您知道希望所有实例变量都具有 getter 和 setter 的情况下始终同时拥有这两种方法是标准的呢?我想我要跳闸了,因为我基本上在 100% 的时间里看到它像这样使用,而我觉得它真的没有必要……只需声明 @properties 并保留它。
想法?最佳编码实践建议?还是我在这里遗漏了一些信息?