哪种方式更适合用于键值编码?让我们假设MyController类有变量myVariable。有人能写出好与坏的意见,以及为什么。
1.
// Method in the MyController class.
- (NSString*)myVariableKVC {
return NSStringFromSelector(@selector(myVariable));
}
[myController addObserver:self
forKeyPath:[myController myVariableKVC]
options:NSKeyValueObservingOptionNew
context:nil];
2.
[myController addObserver:self
forKeyPath:@"myVariable"
options:NSKeyValueObservingOptionNew
context:nil];
从我的角度来看,第一部分更好。我们没有硬编码的字符串,当我们使用Refactor -> Rename...进行重命名时,它将被重命名。