«Состояние» или «статус»? Когда имя переменной должно содержать слово «состояние», а когда имя переменной должно содержать слово «состояние»? [закрыто]

18

Читая код и обсуждения, относящиеся к коду, я часто вижу слова «состояние» и «статус», используемые взаимозаменяемо, но, похоже, существуют следующие тенденции:

  • Когда переменная содержит значение, предназначенное для указания того, что что-то находится в определенном состоянии, имя этой переменной чаще всего содержит слово «состояние» или его сокращение.

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

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

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

Я полагаю, что этот вопрос тоже важен.

Будет
источник
2
Отсюда и попытка краудсорсинга. Это очень не место для голосования, хотя.
Мартейн Питерс
Не на любом сайте Stack Exchange; форум возможно?
Мартин Питерс
Было бы немного лучше, конечно. «Опрос» в названии тоже должен идти.
Мартейн Питерс
6
Статус этого вопроса в ближайшее время будет закрыт , но он будет оставаться в активном состоянии в течение некоторого времени после этого.
Reactgular

Ответы:

17

Мне нравится этот вопрос. Следующее из моей головы, но я думаю, что оно подходит очень хорошо.

  • статус используется для описания результата операции (например, успех / неудача).

  • состояние используется для описания стадии в процессе (например, ожидание / отправка).


Мне также нравится это определение:

  • статус является окончательным (итоговым) состоянием.

Это вполне понятно применительно к программированию. Гораздо менее понятно, когда вы применяете это к естественному языку. Давайте возьмем примеры из английской ветки и посмотрим, подходит ли он для ответа с наибольшим количеством голосов.

«Каков текущий статус этого проекта?» Ответ должен быть «В тестировании».

Ну, это может показаться противоречащим моим определениям на первый взгляд, но мы должны понять контекст. Возможно, какой-то руководитель спрашивает свою команду о проекте и о том, как далеко они продвинулись . Дело в том, что руководитель заинтересован в результате до сих пор. Факт, что будет что-то после, просто убран, потому что это не главное.

"Каково текущее состояние этого проекта?" Ответ должен быть «В ожидании финансового анализа».

Поэтому я думаю, что это очень хорошо демонстрирует суть государства. «В ожидании финансового анализа». четко акцентируется на том, что текущая ситуация частью какого-то охватывающего процесса, и даже предлагает следующее состояние.

Я бы сказал, что это довольно хорошо.

климат
источник
Это самые полезные определения для программирования на мой взгляд. Я использую «состояние», когда я хочу описать, была ли операция успешной или нет, и «состояние» для более подробного и подробного описания.
cprcrack
3

Из того, что я видел, «состояние» часто используется для вещей, которые могут измениться, и у программиста есть хоть какой-то контроль над тем, как / когда оно меняется (даже если косвенно). Он также почти всегда используется для обозначения положительных состояний. «Вы поместили соединение в отключенное состояние».

«Статус» имеет тенденцию быть противоположным. Как правило, он используется для вещей, которые происходят без участия программиста - и часто это не может изменить программист. Это также имеет тенденцию использоваться для отрицательных статусов. «Статус вашего соединения (проверка ...) отключен».

Telastyn
источник
1

«Состояние» заставляет меня думать о «конечном автомате», и я обычно использую его для обозначения чего-то внутреннего / технического, такого как «открытый», «заголовок синтаксического анализа», «форматы согласования», «чтение текста», «чтение видео» и т. д. Что-то, о чем может заботиться коллега-программист, но не предназначенное (очень) для конечного пользователя. Возможно, если они попросят более подробную информацию об ошибке, но не первое, что они увидят.

«Статус» менее техничен и больше для конечного пользователя, например, «чтение», «ошибка 404», «успех 200».

Все ИМХО.

user949300
источник