【发布时间】:2013-11-02 15:32:31
【问题描述】:
可能在宏伟的计划中并不重要,但我很好奇一些更资深的程序员的想法。
假设我们有一个布尔属性来跟踪广告是否已启用。由于 'Ads' 是复数形式,现在复数形式 'are' 将用于一般写作。
但是,在我的代码中,所有其他布尔属性都以“is”为前缀。示例:isUserLoggedIn'。
问:哪个最好:统一性还是语法?
// Uniform, but grammatically incorrect:
@property (nonatomic, assign) BOOL isUserLoggedIn;
@property (nonatomic, assign) BOOL isAutoplayEnabled;
@property (nonatomic, assign) BOOL isAdsEnabled;
// or
// Grammatically correct, but not uniform
@property (nonatomic, assign) BOOL isUserLoggedIn;
@property (nonatomic, assign) BOOL isAutoplayEnabled;
@property (nonatomic, assign) BOOL areAdsEnabled;
我继续使用 areAdsEnabled,因为它对我的困扰较少。如果您认为我错了,请启发我。
【问题讨论】:
-
areAdsEnabled。或者只是adsEnabled。 -
投票结束:“许多好的问题会根据专家经验产生一定程度的意见,但这个问题的答案往往几乎完全基于意见,而不是事实、参考资料或特定专业知识。”
-
我不关心
is前缀,大多数时候它不再符合语法 -if(foo.isUserLoggedIn)?嗯。现在if(foo.userIsLoggedIn)会更好,IMO。 -
您应该使用
isFoo作为 getter,而不是完整的属性名称。