Я уверен, что есть следующий термин для рефакторинга, но я не могу вспомнить его, и мой Google-фу подводит меня!
Рефакторинг перемещается, если операторы туда, где они будут оказывать наибольшее влияние, например, изменяя это
$test = someFunctionThatReturnsABool();
for($x = 0; $x < 10000; $x++) {
if ($test) {
echo $x;
}
}
К этому
$test = someFunctionThatReturnsABool();
if ($test) {
for($x = 0; $x < 10000; $x++) {
echo $x;
}
}
Это также называется
hoisting
илиscalar promotion
. Смотрите здесь :источник
Похоже на вариант «Удалить контрольный флаг» (стр. 245 из Рефакторинга Фаулера )
Пример PHP можно найти на DZone .
источник
Я не думаю, что такой рефакторинг существует.
Таким образом, было бы трудно найти его среди «списков рефакторингов».
Я бы назвал этот пример оптимизацией, а не рефакторингом .
Для меня рефакторинг - это изменение кода, чтобы улучшить его понятность, не влияя на его поведение.
Для меня оптимизация - это изменение кода для повышения производительности.
Поскольку оптимизированный код менее понятен. Две практики имеют тенденцию работать друг против друга.
источник