Clique sobre os tópicos listados abaixo para navegar até o conteúdo desejado:

  1. Sintaxe básica
  2. package e import
  3. func
  4. main
  5. Printf
  6. "Olá, Mundo!"
  7. Bloco de Código
  8. Declaração
  9. Comentário
  10. Tipos de arquivos

Um programa mais simples escrito na linguagem Go possui o template padrão abaixo. A partir dele, vamos estudar o básico sobre a sintaxe de Go com exemplos.

Exemplo 1
//arquivo main.go
package main
import "fmt"

//função principal
func main() { 
	fmt.Printf("Olá, Mundo!")
}
Saída
Olá, Mundo!

A linguagem Go utiliza o conceito de packages(pacotes) para criação de seus programas. Cada arquivo é visto como um pacote e esse podendo sendo utilizado em outros programas utilizando o import.

Exemplo 2
package main
import "fmt"
//outros importa vem aqui

No exemplo acima criamos um package para nosso programa e estamos utilizando um segundo pacote fmt. Por padrão, a definição dos packages e imports devem ficar no topo do arquivo.

O import se assemelha aos include utilizado nas linguagens de C e C++, using em C# e VB.Net, e import em Java.

As funções/procedimentos em Go, diferentes de C, iniciam-se com a palavra reservada func e seu corpo é delimitado por { e } assim como em C. Mais informações sobre a função serão vistas em Funções.

Exemplo 3
func main() { 
	//omitido
}

Assim como um programa em C, um programa escrito em Go possui uma função principal e obrigatória main que é a entrada principal para execução do programa.

Exemplo 4
func main() { 
	fmt.Printf("Olá, Mundo!")
}

A função main podem receber argumento de linha de comando passado externamente para o programa. Para isso, é necessário utilizar o package "os" que será visto em Linha de Comando

O método Prinft faz parte da saída de dados da linguagem Go que imprime informações na saída padrão semelhante que já foi visto em Tutorial C: prinft e Tutorial Portugol : Entrada e Saída.

Exemplo 4
func main() { 
	fmt.Printf("Olá, Mundo!")
}

Na linguagem Go, assim como em várias outras linguagens, informações delimitadas por (") são reconhecidas como strings. Como pode ser observado, "Olá mundo!" é passado como argumento para a função Printf.

Exemplo 5
fmt.Printf("Olá, Mundo!")

Os caracteres { e } significam respectivamente o início e fim de um bloco de declarações escritas em Go. Esses blocos são utilizando em funções, métodos, comandos e outros.

A identação de bloco de código em funções, métodos e comandos exige que não seja declarado em uma nova linha nome como no exemplo abaixo:

Exemplo 6
funcao | metodo | comando { // deve fica na mesma linha
	//código omitido
}

Diferente de linguagem como C, C++ , C# e Java, em Go o uso do (;) como terminador de declaração não é obrigatório.

Exemplo 7
fmt.Printf("Olá, Mundo!") //sem ;
fmt.Printf("Olá, Mundo!");

Go, sendo uma linguagem estilo-C, utiliza "//" para com adicionar comentários em um linha e "/**/" para múltiplas linhas.

Exemplo 8
/*
comentário 
multilinha
*/

//comentário de linha

Caso exista algum trecho de código indesejado ou para fins de teste, pode-se utilizar "//" para comentar linhas de código de nossos programas para que não sejam executados.

Assim como várias linguagens de programação, a linguagem Go possui alguns tipos de arquivos que são reconhecidos como contendo declarações utilizando essa linguagem.

Arquivo .go

Os arquivos .go são os arquivos que contém toda a programação de funções, procedimentos, packages, métodos e outros.

Vamos aprender a separar as partes de nossos programas em seus respectivos arquivos .go em Package do usuário.

  1. 08/09/2025 - revisão 3 - Ajustes: pontuais, target de links e objetivos; Adição: parágrafo sobre identação
  2. 16/09/2024 - revisão 2 - Adição de links de objetivos; ajustes gramaticais/link portugol; outros ajustes
  3. 02/10/2023 - revisão 1 - Correção em referências, erros gramaticais e remoção de texto lixo
  4. 21/08/2023 - versão inicial