Рубрики
Без рубрики

Выразите свои намерения в вашем кодировании – короткие переменные переменные

Короткое пятничное сообщение. Давайте немного поговорим о намерениях реализации и как вы отражаете их в своем … Теги с архитектурой, Python, Codequality, CodeReview.

Короткое пятничное сообщение. Давайте немного поговорим о намерения реализации И как вы отражаете их в вашем коде.

Чем больше я код, и тем больше я проверю код других, некоторые мелочи начинают «подчеркивать» меня немного 😄 Но это положительный стресс, я должен сказать.

Вы считаете, как другие читают и понимают объем ваших переменных? Все больше и больше, я пытаюсь выразить свои намерения при имении переменных. И нет, я не говорю о Длинные имена или Короткие загадочные имена Отказ Здесь я говорю о время и Длина (Область применения) Переменная будет иметь в выполнении/внедрении. Посмотрим. Представьте себе следующий блок код:

var1 = # some logic

# some logic defined in 2 or 3 lines 
# using var1

# the code continues on and var1 is never used again.

Еще один более строгий пример может быть:

var1 = # some long-line logic about 80 chars
# one shorter line using var1

# the code continues on and var1 is never used again.

Откуда вы знаете, что var1 Не используется где-либо еще в реализации, когда вы читаете эти строки? Вы не (до тех пор, пока вы ищете его и не найду, где нет нигде). Итак, вот наступает вопрос: как мы можем сообщить читателю, что var1 используется только в непосредственной близости от следующих строк?

Вот что я делаю: префикс имена переменной с _ Отказ Как это, когда читаю _var1 Мы знаем, что его прицел закончится в последующей короткой реализации. Конечно, вы можете утверждать, что мы могли бы использовать _ только вместо _var1 Отказ Это правда, и вы правы. Но иногда приятно назвать переменные, чтобы дать им цель. Также потому, что чистый подчеркивающий _ чаще всего используется для не использованы переменные Отказ

Вы также можете использовать _var1 Временно хранить результат какой-то логики для облегчения чтения в следующих строках. Вот пример, который я использовал в моем Предыдущий пост , где я использую _tmp Чтобы упростить следующую логику.

# reduce the long call to a short temporary variable
_tmp = someobj.somemethod(run["run_dir"])
somejob = Path(
    rundir,
    f'{fileroot}_{_tmp}_{somevar}w',
    )

Это все за эту пятницу короткий пост. Дайте мне знать ваши комментарии, ура,

Оригинал: “https://dev.to/joaomcteixeira/express-your-intentions-in-your-coding-short-lived-variables-38hn”