ExpertiDict

Go · Intermediário · Português · Técnico

função construtora

/fũˈsɐ̃w̃ kõs.tɾuˈto.ɾa/substantivo

Convenção de criar valores por uma função chamada NewTipo, que devolve o tipo já inicializado. Go não tem construtores na linguagem, então essa função faz o papel.

Onde usar

Aparece quando o zero value não basta, por exemplo para inicializar um mapa interno ou validar parâmetros. Pode devolver também um error quando a criação pode falhar.

Em código

type Fila struct{ itens []int }

func NewFila() *Fila {
  return &Fila{itens: make([]int, 0, 8)}
}
// uso: f := NewFila()

Exemplos

Cria o cliente pela função construtora, não direto pela struct.

A função construtora devolve um erro se a configuração for inválida.

Cuidado

Não é um construtor de verdade: nada impede alguém de criar a struct diretamente, ignorando a função.

Sinônimos

função New

Veja também

Todos os termos de Go