Предположим, у нас есть класс с полем x
. Это тип значения , а не сущность (скажем, int
или string
). Мы создаем метод экземпляра и используем поле, не меняя его значения.
Является ли хорошей практикой создание новой локальной переменной и присвоение ей значения x
? Рассмотрим следующий пример в псевдокоде:
private instance-method(n) {
const float x = this.x
float y = x * x + math.sin(x)
y += this.monte-carlo(this.space, x, n)
this.result.y = y
}
Я мог бы вместо этого использовать this.x * this.x + math.sin(this.x)
, но я думаю, что он менее читабелен, поскольку слишком много this
слов . С другой стороны, это дополнительная строка кода , которая не приносит много пользы. А что касается принуждения x
к постоянству, в большинстве языков мы можем заставить его в любом случае другими способами.
Каковы плюсы и минусы такого подхода? Это хорошая практика? Делает ли это код более читабельным или менее читаемым?