"Estado" ou "status"? Quando um nome de variável deve conter a palavra "estado" e quando um nome de variável deve conter a palavra "status"? [fechadas]


18

Lendo código e discussões relacionadas a código, muitas vezes vejo as palavras "estado" e "status" usadas de forma intercambiável, mas as seguintes tendências parecem existir:

  • Quando uma variável possui um valor destinado a indicar que algo está em um determinado estado, o nome dessa variável geralmente contém a palavra "estado" ou uma abreviação da mesma.

  • No entanto, quando o valor de retorno de uma função serve para indicar algum estado, tendemos a chamá-lo de "código de status"; e quando esse valor é armazenado em uma variável, essa variável geralmente é chamada de "status" ou algo semelhante.

Isoladamente, tudo bem, eu acho, mas quando as variáveis ​​acima mencionadas são na verdade uma e a mesma, é preciso fazer uma escolha envolvendo os meandros pervertidos da língua inglesa (ou da língua humana em geral).

Qual é o padrão ou convenção de codificação predominante quando se trata de desambiguar entre os dois? Ou um desses dois sempre deve ser evitado?

Esta questão english.stackexchange também é relevante, suponho.


2
Daí esta tentativa de crowdsourcing. Isto é muito não o lugar para sondagens de opinião, no entanto.
Martijn Pieters

Não está em nenhum site do Stack Exchange; um fórum, talvez?
Martijn Pieters

Seria um pouco melhor, certamente. O 'Polling' no título teria que ir também.
Martijn Pieters,


6
O status desta pergunta será encerrado em breve , mas permanecerá em um estado ativo por algum tempo depois.
Reactgular

Respostas:


16

Eu gosto dessa pergunta. O seguinte é da minha cabeça, mas acho que se encaixa muito bem.

  • status é usado para descrever o resultado de uma operação (por exemplo, êxito / falha).

  • O estado é usado para descrever uma etapa de um processo (por exemplo, pendente / despachada).


Eu também gosto desta definição:

  • status é um estado final (resultante).

É bastante claro quando aplicado à programação. Muito menos claro quando você o aplica à linguagem natural. Vamos pegar os exemplos do tópico em inglês e ver se ele contém a resposta mais votada.

"Qual é o status atual deste projeto?" A resposta deve ser "Em teste".

Bem, isso pode parecer contradizer minhas definições à primeira vista, mas precisamos entender o contexto. Provavelmente, algum supervisor está perguntando à sua equipe sobre o projeto e até onde eles chegaram . O ponto é que o supervisor está interessado no resultado até agora. O fato de que haverá algo depois é simplesmente descartado, porque não é o objetivo da questão.

"Qual é o estado atual deste projeto?" A resposta deve ser "Em espera para análise financeira".

Então eu acho que isso demonstra muito bem a essência de um estado. "Em espera para análise financeira." foca claramente o fato de que a situação atual é parte de algum processo abrangente e até sugere o próximo estado.

Eu diria que é muito bom.


Estas são as definições mais úteis para a programação na minha opinião. Uso "status" quando estou disposto a descrever basicamente se a operação foi bem-sucedida ou não, e "state" para descrições mais descritivas e detalhadas.
Cprcrack

3

Pelo que vi, "estado" é frequentemente usado para coisas que podem mudar e o programador tem pelo menos algum controle sobre como / quando ele muda (mesmo que indiretamente). Também quase sempre é usado para se referir a estados positivos. "Você colocou a conexão em um estado desconectado."

"Status" tende a ser o oposto. Ele tende a ser usado para coisas que acontecem sem a entrada do programador - e muitas vezes que o programador não pode mudar. Também tende a ser usado para status negativos. "O status da sua conexão está (verificando ...) desconectado."


1

"Estado" me faz pensar em "máquina de estado", e normalmente a uso para me referir a algo interno / técnico, como "aberto", "cabeçalho de análise", "formatos de negociação", "leitura de texto", "leitura de vídeo" , etc. Algo que um colega programador pode se interessar, mas não destinado (muito) ao usuário final. Talvez se eles pedirem mais detalhes sobre um erro, mas não a primeira coisa que virem.

"Status" é menos técnico e mais para um usuário final, por exemplo, "leitura", "erro 404", "sucesso 200".

Todos IMHO.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.