Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Coding style 非特定语言:使用“;“状态变量”;而不是返回状态参数?_Coding Style - Fatal编程技术网

Coding style 非特定语言:使用“;“状态变量”;而不是返回状态参数?

Coding style 非特定语言:使用“;“状态变量”;而不是返回状态参数?,coding-style,Coding Style,这是我多年来一直在思考的一个问题,在所有其他情况下都要考虑以下示例: 假设您有一个按钮,根据其可见性,您希望将其更改为另一个状态,可见->不可见,不可见->可见 如果有人没有阅读他正在使用的类的文档,他可能会选择 Button button; bool visible; public onTouch(){ if(visible){ button.setVisibility(invisible) visible=false;} else{ button.setVisi

这是我多年来一直在思考的一个问题,在所有其他情况下都要考虑以下示例:

假设您有一个按钮,根据其可见性,您希望将其更改为另一个状态,可见->不可见,不可见->可见

如果有人没有阅读他正在使用的类的文档,他可能会选择

Button button;
bool visible;

public onTouch(){

if(visible){
    button.setVisibility(invisible)
    visible=false;} 
else{
    button.setVisibility(visible)
    visible=true;}
}
那就太好了。但是,在大多数语言中,UI类提供类似于
按钮.getVisibility
的功能,这将产生以下代码:

Button button;

public onTouch(){

if(button.getVisibility==visible){
    button.setVisibility(invisible)} 
else{
    button.setVisibility(visible)}
}
这需要更少的行,如果可见性是布尔值,那么onTouch()甚至可以是一行。另一方面,您进行方法调用时,该方法需要时间来返回值,这在很大程度上会导致一点延迟,从而使GUI有点无响应


你是怎么处理的?这是值得关注的吗?还是我花在写这个问题上的时间已经超过了用户“等待”按钮返回一个小参数所经历的所有CPU周期?

我会选择第二个选项,只担心是否有证据表明这是一个性能瓶颈。成本可能微不足道,编译器可能会对其进行优化

在性能方面,维护一个单独的
可见的
变量也有成本,但更重要的是,确保它与
按钮保持同步的复杂性

也许
按钮
应该有一个
toggleVisibility()
方法