Sobes.tech
Intern

A linguagem Go é imperativa ou declarativa?

sobes.tech IA

Resposta da IA

Go é uma linguagem de programação imperativa. Os programas em Go consistem numa sequência de instruções que descrevem explicitamente como realizar uma tarefa.

Características principais:

  • Foco no "como": O programador indica exatamente os passos que o computador deve seguir.
  • Alteração de estado: O código influencia diretamente o estado da memória e das variáveis.
  • Execução passo a passo: O programa é executado instrução por instrução.

Exemplo de abordagem imperativa em Go:

// abordagem imperativa: descrevemos claramente os passos para calcular a soma
func sumImperative(numbers []int) int {
	total := 0 // atribuição explícita do valor inicial
	for _, num := range numbers { // ciclo com percurso explícito dos elementos
		total += num // alteração explícita do estado da variável total
	}
	return total
}

Ao contrário das linguagens declarativas, onde descreve "o que" deseja obter (por exemplo, uma consulta SQL ou marcação HTML), em Go você diz ao computador "como" fazer.