0
Отвечено

Дополнение про "Replace Temp with Query"

Roman Revin 10 年 前 已更新 10 年 前 5
Возможно ли дополнить статью Replace Temp with Query разделом с подводными комнями? Навскидку: при замене на метод теряется возможность модифицировать коэффициент, который находится в переменной. 
На рассмотрении
Хм, а почему теряется? Вы можете менять коэффициент в новом выделенном методе, не так ли?
function basePrice() {
    return $this->quantity * $this->itemPrice;
}
Пример явно подразумевает что вычисления происходят каждый раз при вызове метода. Если усложнять его добавлением контейнера для хранения результата, добавлять метод для модификации, это уже попахивает избыточностью кода.
Спасибо, теперь понял о чём вы. Добавил такой параграф в раздел о производительности:

"Тем не менее, если ваша временная переменная служит для кеширования результата действительно трудоёмкого выражения, имеет смысл остановить этот рефакторинг после выделения выражения в новый метод."
Отвечено
Отлично. Спасибо.

UserEcho 的客户支持