启用/禁用或激活/停用方法的命名约定

时间:2011-01-23 16:14:59

标签: objective-c naming-conventions

我目前正在开发一个Objective c项目,并且有一个方法可以在另一个术语中启用/禁用OR:激活/停用全局HTTP代理。我想知道这种方法的最佳命名约定是什么。该方法有一个BOOL参数来决定执行哪个操作,即:启用或禁用。这是一个与大多数编程语言相关的风格问题,我决定我喜欢这个伟大的社区对这个问题的投入,因为某些原因困扰着我。

这是好事吗?什么更好或更清楚?

-(BOOL) activate:(BOOL) theActivateFlag;

-(BOOL) enable:(BOOL) theEnableFlag;

调用[proxyObj activate:NO]或[proxyObj enable:NO]会被理解为停用代理吗?
谢谢:)

3 个答案:

答案 0 :(得分:2)

Apple在自己的类中使用enabled属性:

@property (nonatomic, getter = isEnabled) BOOL enabled;

创建以下getter和setter:

- (BOOL)isEnabled {
    return enabled;
}

- (void)setEnabled:(BOOL)flag {
    enabled = flag;
}

或者,您可以为代理商提供一对activatedeactivate方法或enabledisable方法。

答案 1 :(得分:1)

我已经想过了(在考虑了它并改变了我的想法之后)......

-(BOOL) enableProxy:(BOOL)shouldEnable;
......会更有意义,虽然我是第一个承认我偶尔会沉溺于命名惯例绝望的黑暗坑(墙上涂有严重表达的功能和方法名称),所以也许我不是最好回答这个问题。 : - )

答案 2 :(得分:0)

我喜欢表单在我的代码中反映功能

在文件的顶部我放了一个

#define DISABLED NO
#define ENABLED YES

并且我的功能是

- (void)toggleProxyAs:(BOOL)state {
    // assuming enabled is property/instance variable
    enabled = state;
}

并将其用作

[myProxyObj toggleProxyAs:ENABLED];

这不是标准的做事方式,但对我来说它更清晰,无需单独的激活器/去激活器。