次のコードスニペットを考えると、かなりの違いはありますか?
public boolean foo(int input) {
if(input > 10) {
doStuff();
return true;
}
if(input == 0) {
doOtherStuff();
return true;
}
return false;
}
対。
public boolean foo(int input) {
if(input > 10) {
doStuff();
return true;
} else if(input == 0) {
doOtherStuff();
return true;
} else {
return false;
}
}
または、このコードでは、単一出口の原則の方が優れているでしょうか...
public boolean foo(int input) {
boolean toBeReturned = false;
if(input > 10) {
doStuff();
toBeReturned = true;
} else if(input == 0) {
doOtherStuff();
toBeReturned = true;
}
return toBeReturned;
}
目に見えるパフォーマンスの違いはありますか?あるものが他のものより多かれ少なかれ保守可能/読みやすいと思いますか?