Читая код и обсуждения, относящиеся к коду, я часто вижу слова «состояние» и «статус», используемые взаимозаменяемо, но, похоже, существуют следующие тенденции:
Когда переменная содержит значение, предназначенное для указания того, что что-то находится в определенном состоянии, имя этой переменной чаще всего содержит слово «состояние» или его сокращение.
Однако, когда возвращаемое значение функции служит для указания некоторого такого состояния, мы склонны называть это значение «кодом состояния»; и когда это значение сохраняется в переменной, эта переменная обычно называется «статус» или что-то подобное.
В целом, это нормально, но, когда вышеупомянутые переменные на самом деле одинаковы, необходимо сделать выбор, включающий извращенные сложности английского языка (или человеческого языка в целом).
Каков преобладающий стандарт кодирования или соглашение, когда дело доходит до двусмысленности между этими двумя? Или всегда следует избегать одного из этих двух?
Я полагаю, что этот вопрос тоже важен.
Ответы:
Мне нравится этот вопрос. Следующее из моей головы, но я думаю, что оно подходит очень хорошо.
статус используется для описания результата операции (например, успех / неудача).
состояние используется для описания стадии в процессе (например, ожидание / отправка).
Мне также нравится это определение:
Это вполне понятно применительно к программированию. Гораздо менее понятно, когда вы применяете это к естественному языку. Давайте возьмем примеры из английской ветки и посмотрим, подходит ли он для ответа с наибольшим количеством голосов.
«Каков текущий статус этого проекта?» Ответ должен быть «В тестировании».
Ну, это может показаться противоречащим моим определениям на первый взгляд, но мы должны понять контекст. Возможно, какой-то руководитель спрашивает свою команду о проекте и о том, как далеко они продвинулись . Дело в том, что руководитель заинтересован в результате до сих пор. Факт, что будет что-то после, просто убран, потому что это не главное.
"Каково текущее состояние этого проекта?" Ответ должен быть «В ожидании финансового анализа».
Поэтому я думаю, что это очень хорошо демонстрирует суть государства. «В ожидании финансового анализа». четко акцентируется на том, что текущая ситуация частью какого-то охватывающего процесса, и даже предлагает следующее состояние.
Я бы сказал, что это довольно хорошо.
источник
Из того, что я видел, «состояние» часто используется для вещей, которые могут измениться, и у программиста есть хоть какой-то контроль над тем, как / когда оно меняется (даже если косвенно). Он также почти всегда используется для обозначения положительных состояний. «Вы поместили соединение в отключенное состояние».
«Статус» имеет тенденцию быть противоположным. Как правило, он используется для вещей, которые происходят без участия программиста - и часто это не может изменить программист. Это также имеет тенденцию использоваться для отрицательных статусов. «Статус вашего соединения (проверка ...) отключен».
источник
«Состояние» заставляет меня думать о «конечном автомате», и я обычно использую его для обозначения чего-то внутреннего / технического, такого как «открытый», «заголовок синтаксического анализа», «форматы согласования», «чтение текста», «чтение видео» и т. д. Что-то, о чем может заботиться коллега-программист, но не предназначенное (очень) для конечного пользователя. Возможно, если они попросят более подробную информацию об ошибке, но не первое, что они увидят.
«Статус» менее техничен и больше для конечного пользователя, например, «чтение», «ошибка 404», «успех 200».
Все ИМХО.
источник