我的问题与上一个问题有关,但提供的解决方案并未解决我在下面概述的问题。在谷歌搜索之后,我没有找到任何代码样式指南来解决这样的 if 语句中长条件的特定问题。
if( isNull(value1) ||
isToLong(value1) ||
hasBadFormat(valule1)){
doSomething();
}else{
doSomethingElse();
}
或者:
if( isNull(value1) || isToLong(value1) || hasBadFormat(valule1) ){
doSomething();
}else{
doSomethingElse();
}
这两种风格的问题是,我的眼睛很难在真正的块中找到代码并将其与条件句分开,或者在长时间的条件后,眼睛很难确定正确的下一行一行,特别是如果 if 语句已经在函数或其他 if 语句中缩进了几个制表符。
最好做这样的事情:
if( isNull(value1) ||
isToLong(value1) ||
hasBadFormat(valule1)){
doSomething();
}else{
doSomethingElse();
}
或者这种风格会更好地以以下任何一种方式缩进每个新条件:
if( isNull(value1) ||
isToLong(value1) ||
hasBadFormat(valule1)){
doSomething();
}else{
doSomethingElse();
}
if( isNull(value1)
|| isToLong(value1)
|| hasBadFormat(valule1) ){
doSomething();
}else{
doSomethingElse();
}
有没有人有一个编码风格指南(可能是公司编码风格政策)以不同于我建议的方式或更好的方式解决这个问题?哪一个更可取,您能找到我提到的解决方案的任何缺点或优点吗?