[清洁代码]:哪个更好?变量还是return单行函数?
[Clean Code]: Which is better? Variable or return one-line function?
哪个更好?单行返回函数optionIsOutOfRange()
:
public function deleteOption(index:int):void {
if (optionIsOutOfRange(index)) {
throw new Error("Option index is out of range! Cannot delete!");
} else {
options.splice(index, 1);
}
}
private function optionIsOutOfRange(optionIndex:int):Boolean {
return optionIndex > numOptions - 1;
}
或者这里的变量是optionIsOutOfRange
:
public function deleteOption(index:int):void {
var optionIsOutOfRange:Boolean = index > numOptions - 1;
if (optionIsOutOfRange(index)) {
throw new Error("Option index is out of range! Cannot delete!");
} else {
options.splice(index, 1);
}
}
如果你想实现一些在多个地方使用并且将来可能会改变的检查逻辑,就需要一个函数。
对于代码的可维护性和可扩展性,函数更好,对于性能,内联代码更好。
哪个更好?单行返回函数optionIsOutOfRange()
:
public function deleteOption(index:int):void {
if (optionIsOutOfRange(index)) {
throw new Error("Option index is out of range! Cannot delete!");
} else {
options.splice(index, 1);
}
}
private function optionIsOutOfRange(optionIndex:int):Boolean {
return optionIndex > numOptions - 1;
}
或者这里的变量是optionIsOutOfRange
:
public function deleteOption(index:int):void {
var optionIsOutOfRange:Boolean = index > numOptions - 1;
if (optionIsOutOfRange(index)) {
throw new Error("Option index is out of range! Cannot delete!");
} else {
options.splice(index, 1);
}
}
如果你想实现一些在多个地方使用并且将来可能会改变的检查逻辑,就需要一个函数。
对于代码的可维护性和可扩展性,函数更好,对于性能,内联代码更好。