As 20 principais perguntas da entrevista GO (Golang) (2025)
Aqui estão as perguntas e respostas da entrevista Golang para calouros e também para candidatos experientes a programadores GO para conseguir o emprego dos sonhos.
1) Explique o que é GO?
GO é uma linguagem de programação de código aberto que facilita a construção de software simples, confiável e eficiente. Os programas são construídos a partir de pacotes, cujas propriedades permitem o gerenciamento eficiente de dependências.
Download gratuito de PDF: Perguntas e respostas da entrevista sobre programação GO
2) Como é a sintaxe no GO?
A sintaxe em GO é especificada usando Extended Backus-Naur Form (EBNF)
- Produção = nome_produção “=” [Expressão]
- Expressão = Alternativa { “l” Alternativa }
- Alternativa = Termo {Termo}
- Termo = Production_name l token [ “…”token] l Grupo l Opção l Repetição
- Grupo = “ (“Expressão”)”
- Opção = “[“ Expressão “]”
- Repetição = “{“Expressão “}”
3) Explique o que são literais de string?
Uma string literal representa uma constante de string obtida da concatenação de uma sequência de caracteres. Existem duas formas,
- Literais de string bruta: O valor dos literais de string brutos é uma sequência de caracteres entre aspas crases ''. O valor de uma string literal é a string composta pelo caractere ininterrupto entre aspas.
- Literais de string interpretados: É representado entre aspas duplas ““. O texto entre aspas duplas, que não pode conter novas linhas, forma o valor do literal.
4) Explique os pacotes no programa Go?
Todo programa GO é composto de pacotes. O programa começa a ser executado no pacote a Principal. Este programa está usando os pacotes com caminhos de importação "Fmt" e “matemática/rand”.
5) Explique o espaço de trabalho no GO?
Dentro de um espaço de trabalho o código GO deve ser mantido. Um espaço de trabalho é uma hierarquia de diretórios com três diretórios em sua raiz.
- src contém arquivos fonte GO organizados em pacotes
- pkg contém objetos de pacote e
- bin contém comandos executáveis
6) Explique como usar pacotes personalizados na linguagem GO?
Se você estiver transformando sua biblioteca em um projeto go get –table separado e se sua biblioteca for para uso interno, você poderá codificar assim
- No diretório do seu projeto coloque o diretório com os arquivos da biblioteca
- Consulte a biblioteca usando seu caminho relativo à raiz do seu espaço de trabalho que consiste no projeto
Por exemplo, src/ meuprojeto/ minhalib/ minhalib.go . . . main.go Agora, em principal.go você poderia importar meuprojec/mylib.
7) Explique o que é variável de ambiente GOPATH?
A variável de ambiente GOPATH determina a localização da área de trabalho. É a única variável de ambiente que você deve definir ao desenvolver o código Go.
8) Explique como você pode fazer testes no GO?
Possui uma estrutura de teste leve que consiste no vá testar comando e o ensaio pacote. Para escrever um teste você deve criar um arquivo com um nome que termine em _testing. Go que contém funções chamadas TestXXX com assinatura func (t *testing.T). A estrutura de teste executa cada uma dessas funções.
9) Explique o que são tipos de string?
Um tipo string representa o conjunto de valores de string e os valores de string são uma sequência de bytes. As strings, uma vez criadas, não podem ser alteradas.
10) Quais são as vantagens do GO?
- GO compila muito rapidamente
- Go oferece suporte à simultaneidade no nível do idioma
- Funções são objetos de primeira classe em GO
- GO tem coleta de lixo
- Strings e mapas são integrados à linguagem
11) Liste o suporte integrado no GO?
O suporte integrado disponível no GO inclui
- Contêiner: contêiner/lista, contêiner/heap
- Servidor Web: net/http
- Criptografia: Crypto/md5 , crypto/sha1
- Compressão: compactar/gzip
- Banco de dados: banco de dados/sql
12) Explique o que é rotina Go no GO? Como você pode parar de rotina?
Uma goroutine é uma função que é capaz de ser executada simultaneamente com outras funções. Para parar a goroutine, você passa para a goroutine um canal de sinal, esse canal de sinal é usado para inserir um valor quando você deseja que a goroutine pare. A goroutine pesquisa esse canal regularmente, assim que detecta um sinal, ela é encerrada.
Quit : = make (chan bool) go func ( ) { for { select { case <- quit: return default // do other stuff } } }() // Do stuff // Quit goroutine Quit <- true
13) Explique como você pode escrever strings multilinhas em GO?
Para escrever uma string multilinha em GO, você pode usar uma string literal bruta, onde a string é delimitada por aspas crases em vez de aspas duplas. 'linha 1 linha 2 linha 3'
14) Explique como você acessa argumentos de linha de comando passados para um programa GO?
Você pode acessar o argumento da linha de comando usando o osVariáveis .Args. Por exemplo,
Package main import ( "fmt" "OS" ) func main () { fmt.Println(len(os.Args), os.Args) }
15) Explique como o ponteiro é representado no GO?
No GO, um ponteiro é representado pelo caractere * (asterisco) seguido do tipo do valor armazenado.
16) Como formatar uma string sem imprimir?
Para formatar uma string sem imprimir você deve usar o comando
return fmt.Sprintf ( "at %v, %s" , e.When , e.What )
17) Explique como os arrays em GO funcionam de maneira diferente de C?
Em GO Ordem funciona de maneira diferente do que funciona em C
- Matrizes são valores, atribuir uma matriz a outra copia todos os elementos
- Se você passar um array para uma função, ela receberá uma cópia do array, não um ponteiro para ele
- O tamanho de um array faz parte do seu tipo. Os tipos [10] int e [20] int são distintos
18) Explique as interfaces GO?
No GO, interfaces é uma forma de especificar o comportamento de um objeto. Uma interface é criada usando o "tipo" palavra, seguida por um nome e a palavra-chave interface. Uma interface é especificada como duas coisas.
- Um conjunto de métodos
- Também é referido como tipo
19) Explique para que a asserção de tipo é usada e como ela funciona?
A conversão de tipo é usada para converter tipos diferentes em GO. Uma asserção de tipo pega um valor de interface e recupera dele um valor do tipo explícito especificado.
20) Na linguagem GO, como você pode verificar o tipo de variável em tempo de execução?
Um tipo especial de switch é dedicado no GO para verificar o tipo de variável em tempo de execução, esse switch é conhecido como switch de tipo. Além disso, você pode ativar o tipo de um valor de interface com Type Switch.
Essas perguntas da entrevista também ajudarão em sua viva (oral)
Boa coleção de perguntas GoLang