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. String
  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 uma 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 tela de forma 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ária outras linguagens, informações delimitadas por (") são reconhecidas como strings(cadeia de carateres). Como pode ser observado, "Olá mundo!" é passado como argumento para a 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, utilizando "//" 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