Короткое пятничное сообщение. Давайте немного поговорим о намерения реализации И как вы отражаете их в вашем коде.
Чем больше я код, и тем больше я проверю код других, некоторые мелочи начинают «подчеркивать» меня немного 😄 Но это положительный стресс, я должен сказать.
Вы считаете, как другие читают и понимают объем ваших переменных? Все больше и больше, я пытаюсь выразить свои намерения при имении переменных. И нет, я не говорю о Длинные имена или Короткие загадочные имена Отказ Здесь я говорю о время и Длина (Область применения) Переменная будет иметь в выполнении/внедрении. Посмотрим. Представьте себе следующий блок код:
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”