Длинные имена переменной

Позволяет говорят, что у меня есть переменная, которая содержит количество названий поисковой системы в файле, что Вы назвали бы им?

  • number_of_seach_engine_names
  • search_engine_name_count
  • num_search_engines
  • механизмы
  • engine_names
  • другое имя?

Имя описывает то, что переменная содержит точно, но не является им слишком долго?, совет для выбора имен переменной? особенно, как сократить имя, которое слишком длинно или какой сокращения для использования?

17
задан RaouL 5 June 2010 в 19:15
поделиться

8 ответов

Как насчет numEngineNames ?

Выбор имен переменных - это больше искусство, чем наука. Вам нужно что-то, что не займет целую эпоху, чтобы напечатать, но достаточно долго, чтобы быть выразительным. Это субъективный баланс.

Спросите себя: если кто-то впервые посмотрел на имя переменной, насколько вероятно, что этот человек поймет его назначение?

25
ответ дан 30 November 2019 в 10:39
поделиться

Имя слишком длинное, если существует более короткое имя, которое в равной степени передает назначение переменной.

Думаю, engineCount здесь подойдет. Количество названий двигателей предположительно равно количеству двигателей.

См. Сообщение JaredPar .

18
ответ дан 30 November 2019 в 10:39
поделиться

Если это локальная переменная в функции, я бы, вероятно, назвал ее n, или, возможно, ne. Большинство функций содержат только две или три переменные, поэтому длинное имя не нужно.

-1
ответ дан 30 November 2019 в 10:39
поделиться

Это зависит от области действия переменной. Локальная переменная в короткой функции обычно не заслуживает «идеального имени», просто назовите ее engine_count или что-то в этом роде. Обычно значение легко определить, если бы не комментарий, возможно, лучше, чем двухстрочное имя переменной.

Переменные более широкого диапазона - то есть глобальные переменные (если они действительно необходимы!), Переменные-члены - ИМХО заслуживают названия, которое почти самодокументировано. Конечно, найти исходное объявление не сложно, и большинство IDE делают это автоматически, но идентификатор переменной не должен быть бессмысленным (например, number или count ).

Конечно, все это во многом зависит от вашего личного стиля программирования и условностей на вашем рабочем месте.

6
ответ дан 30 November 2019 в 10:39
поделиться

Зависит от срока службы или предполагаемых целей. Однако это включает в себя время развития. Я недавно назвал вектор «веществом», потому что он предназначался только для экспериментов.

Если переменная объявляется или определяется только рядом с ее использованием, я бы не стал беспокоиться о выразительном имени. Если нет, я бы выбрал имя в средней длины. Я никогда не могу понять, почему люди используют имена, скажем, длиной более 10 символов. Что-то вроде enames было бы моим выбором для вашего вопроса.

-3
ответ дан 30 November 2019 в 10:39
поделиться

Зависит от контекста, если это локальная переменная, как, например,

int num = text.scan(SEARCH_ENGINE_NAME).size();

чем явственнее правая часть выражения, тем короче имя, которое я бы выбрал. Это объясняется тем, что мы находимся в ограниченных рамках, возможно, 4-5 строк, и поэтому можем предположить, что читатель сможет установить связь между коротким именем и выражением в правой части. Однако если это поле класса, я бы предпочел быть как можно более многословным.

2
ответ дан 30 November 2019 в 10:39
поделиться

Когда вы думаете о своем коде, попробуйте взглянуть на него с точки зрения кого-то другого. Это поможет не только выбрать имена, но и сохранить читабельность кода в целом.

Наличие действительно длинных имен переменных затрудняет читаемость кода, поэтому их следует избегать. Но с другой стороны, вам следует избегать ультракоротких названий или аббревиатур, таких как «n» или «ne». Такие короткие загадочные имена заставят кого-то, пытающегося прочитать ваш код, вырвать себе волосы. Обычно однобуквенные переменные используются для небольших задач, например, для увеличения в цикле for.

Итак, у вас остается баланс между этими двумя крайностями. «Num» - это часто используемое сокращение, и любой полуопытный программист сразу поймет, что вы имеете в виду. Так что что-то вроде "numEngines" или "numEngineNames" подойдет. В дополнение к этому вы также можете поместить комментарий в свой код рядом с переменной при первом ее использовании. Это позволит читателю точно знать, что вы делаете, и поможет избежать любой возможной путаницы.

1
ответ дан 30 November 2019 в 10:39
поделиться

См. Аналогичный вопрос

Основной технический императив заключается в уменьшении сложности. Переменные должны быть названы, чтобы уменьшить сложность. Иногда это приводит к более коротким именам, иногда к более длинным именам. Обычно это соответствует тому, насколько сложно обслуживающему персоналу понять сложность кода.

На одном конце спектра у вас есть итераторы цикла и индексы. Они могут иметь такие имена, как i или j, потому что они настолько распространены и просты. Если дать им более длинные имена, это только вызовет большую путаницу.

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

На другом конце спектра находятся переменные, которые используются очень редко. Вы все же хотите уменьшить путаницу здесь, но дать ей короткое имя менее важно, потому что штраф за повторное изучение цели переменной выплачивается не очень часто.

2
ответ дан 30 November 2019 в 10:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: