14

Estou montando um documento em português e preciso inserir um diagrama genérico, similar à imagem abaixo:

enter image description here

Entretanto eu não sei como eu poderia traduzir a palavra "statement".

Os tradutores online me sugeriram "afirmação", dentre várias outras palavras que algo me diz que no contexto atual não representam bem a minha intenção.

Teria alguma palavra mais adequada para o cenário em questão?

Math
  • 3,112
  • 6
  • 26
  • 48

9 Answers9

20

Em ciência da computação temos os termos em inglês statement, instruction, command, directive e declaration com significados diferentes. Nenhum deles tem o significado da palavra affirmation da língua inglesa. Todos estes termos podem ser traduzidos assim:

  • affirmationafirmação

  • commandcomando

  • declarationdeclaração

  • directivediretiva

  • instructioninstrução

  • statement → ???

Aí chegamos no problema: Não há tradução direta para o termo statement no português! A tradução mais aproximada leva ao termo afirmação, mas este em português é inadequado na ciência da computação, uma vez que tem o mesmo significado de affirmation em inglês, que é um termo inadequado ao contexto no qual é empregado.

Em geral, a tradução mais conveniente na minha experiência é como instrução, uma vez que em linguagens de programação imperativas, todos os statements são instructions e quase sempre em que o termo statement é utilizado, o objetivo é referir-se a uma instruction (inclusive no fluxograma demonstrado na pergunta). Nos casos onde o statement corresponde a um comando, diretiva ou declaração, tal termo seria utilizado.

Nos casos aonde há ambiguidade ou generalização, de forma que statement não pode ser traduzido como instrução e nem se refere claramente a algum dos demais termos, convém então deixá-lo em inglês como statement.

O termo afirmação não é correto porque uma afirmação consiste apenas de atestar a veracidade de um fato, o que não corresponde ao propósito usado em uma linguagem de programação imperativa, que é o de especificar que uma determinada ação deve ser efetuada.

Jacinto
  • 44,937
  • 17
  • 141
  • 257
  • Como um programador, eu penso em statement como uma instrucção de como fazer alguma coisa. Um exemplo seria var foo = 55;. O var é um statement. O var não faz nada por si só. Portanto, instrucção é mesmo o termo correcto. – Ismael Miguel Sep 15 '15 at 11:29
11

Eu pessoalmente uso "comando", cujo equivalente em inglês, "command", também pode ser usado nesse contexto. A Wikipédia parece concordar com esse uso (procure pela palavra "comando" nesse artigo). Uma outra possibilidade seria "instrução", mas ela possui a desvantagem de poder ser confundida com instruções de programas de linguagem de máquina, que são menos expressivas.

  • Um comando é muito parecido a um statement, mas, usando Javascript como exemplo, para var foo = 'teste'; é incorrecto dizer que var é um comando. var não executa nada. Apenas diz que a variável pertence a um determinado bloco. Retirando o var continua a declarar a variável ou atribuí um novo valor a uma variável existente. O var não faz nada, apenas instrui em como proceder. – Ismael Miguel Sep 15 '15 at 11:38
  • 2
    O manual da linguagem Lua 5.2 traduz statement por "comando", como você. – Wtrmute Apr 28 '17 at 14:59
10

StatementInstrução

Na tradução portuguesa de Programming Perl, o que eu tinha escrito originalmente com a palavra Statements em inglês tornou-se Instruções em português:

Instruções e declarações

Um programa Perl consiste em uma sequencia de declarações e instruções. [...]

Instruções simples

Uma instrução simples é uma expressão avaliada por seus efeitos colaterais. Cada instrução simples precisa terminar com um ponto-e-vírgula, a menos que seja a instrução final em um bloco. [...]

Instruções compostas

Uma sequencia de instruções de um escopo é chamada de bloco.

Programação Perl, Terceira edição, por Wall, Christiansen e Orwant; O’Reilly and Associates; tradutor Daniel Vieira, Rio de Janeiro 2001.

tchrist
  • 3,299
  • 2
  • 21
  • 40
9

No seu comentário você disse que cada statement "pode ser uma linha contendo cálculo, chamada de função, declaração, inicialização de variáveis, outputs". No âmbito de programação isso é uma instrução. Pode não ser a tradução mais literal, mas é um termo bastante utilizado e facilmente reconhecido pelos programadores.

E mais: não que o Google Tradutor seja uma fonte 100% confiável, mas vale observar que ele traduz "statement" como "declaração", mas traduz "SQL statement" como "instrução SQL".

Yuuza
  • 5,191
  • 7
  • 38
  • 71
7

Note: I'm replying in English cause I'm Spanish and I am able to understand the question and comments but cannot write in Portuguese (sorry!).

I would probably use something more generic, such as ação (’action’).

I'm not 100% sure that ação would match exactly what you're looking for but it would sound OK for me in Spanish and would agree that afirmação, declaração or instrução are more restrictive and would probably not work (same in Spanish!).

Hope this helps.

Jacinto
  • 44,937
  • 17
  • 141
  • 257
ophintor
  • 71
  • 3
  • 1
    An action would be to move a file, delete a record in a database or actually doing something. For example, return foo; is a statement. It doesn't do any actually thing. It hands over the value. var, for example, doesn't do anything besides identifying that the variable is created locally instead of globally (Javascript) or instead of specifying it's type (C#). – Ismael Miguel Sep 15 '15 at 11:24
4

Sorry I'm Spanish and I can only reply in English.

In Spanish, statement in this context is translated as sentencia (sentença in Portguese). The OP's picture looks like a basic flow chart example, and Spanish literature always translates it as sentencia or bloque de sentencias.

Edit: Please, also note that even in Spanish sentencia holds quite the same meaning as frase; sentencia holds several meanings, and within this context it is more like an instruction or command. Also in this context, sentencia means statement, not sentence. In Spanish computer science literature, statement is never translated as frase. Sorry not to help properly, just learning Português.

Sentença (pt) Sentença (br) Sentencia (es)

Jacinto
  • 44,937
  • 17
  • 141
  • 257
fatbit
  • 43
  • 3
  • 3
    I messed up the previous comment completely. Then you would recommend the Portuguese word "frase". That's the closest to the spanish word "sentencia" in the sense of "oración gramatical." "Sentença" is used basically only for a sentece expressing a strong opinion, or a judge's final decision in a court of law. – Jacinto Sep 16 '15 at 11:29
  • 1
    @Jacinto I have only ever seen English sentence (in the sense of an independent clause with its own tensed verb and subject) translated as frase, be it in Spanish or Portuguese. – tchrist Sep 16 '15 at 13:05
  • @tchrist I had no idea of the spanish word "sentencia". But I checked the reference in the answer, and the last meaning is Ling. Oración gramatical. So, I've just learned it. – Jacinto Sep 16 '15 at 13:40
3

Para o caso de ajudar, aqui fica: na linguagem corrente o equivalente português mais próximo de statement é declaração.

Afirmação (Priberam) tem mais a ver com defender a verdade de alguma coisa. É o ato de afirmar, que por sua vez significa: "dar por certo; corroborar; tornar firme; sustentar."

Declaração (Priberam) é mais neutro. É o ato de declarar, que por sua vez tem como significado primário: "manifestar de modo claro e terminante; patentear, tornar conhecido dar a saber."

Jacinto
  • 44,937
  • 17
  • 141
  • 257
  • 2
    Bem lembrado. É importante mencionar, por outro lado, que "declaração" não é muito adequada no contexto dessa pergunta, pois tem um sentido técnico diferente. – Arthur Azevedo De Amorim Sep 14 '15 at 22:42
  • @Arthur Pois, eu lembro-me dos meus tempos de programação, que as declarações consistiam precisamente em dar a conhecer no início de cada rotina as variáveis e coisas assim. Mas num esquema daqueles, em que ainda não se está a escrever código, talvez não houvesse perigo de confusão. – Jacinto Sep 14 '15 at 22:49
  • 1
    Como apontou o @ArthurAzevedoDeAmorim, declaração não funciona bem porque no contexto de programação, um statement pode ser muitas coisas (por exemplo, em C#) incluindo declarações: uma declaração, uma atribuição, um "bloco" (de statements), uma invocação, uma expressão... talvez comando ou frase funcionem melhor. – ANeves Sep 14 '15 at 23:58
  • 1
    O dicionário da porto editora confima: http://www.infopedia.pt/dicionarios/ingles-portugues/statement – Jorge B. Sep 15 '15 at 11:12
0

Nos livros brasileiros programação os termos:

  1. Declaração
  2. Instrução
  3. Comando

são utilizados intercambiavelmente para o termo statement.

Jacinto
  • 44,937
  • 17
  • 141
  • 257
  • 1
    Tua resposta está bem parecida com as demais já existentes. Sugiro adicionar mais informações ou referências para enriquecer tua resposta. – Peixoto Apr 27 '17 at 17:07
0

Como dito anteriormente declaração e instrução funcionam. Asserção é uma tradução possível em alguns contextos, mas declaração é o usado na literatura disponível.

Jacinto
  • 44,937
  • 17
  • 141
  • 257