Introdução
Neste laboratório, começaremos oficialmente a aprender a programação em Go. Abordaremos conceitos básicos e completaremos um programa Go simples por conta própria.
Pontos de Conhecimento:
- Declaração de saída padrão
- Estrutura do código
- Executando um programa
- Funções comuns no pacote
fmt
💡 Primeiro Programa em Go
Vamos começar criando nosso primeiro programa Go. Clique com o botão direito na barra lateral para criar um novo arquivo chamado helloWorld.go na pasta do seu projeto.

Nota: Recomendamos o uso do WebIDE (semelhante ao VS Code) para uma melhor experiência. Saiba mais sobre o Guia de Uso do WebIDE aqui.
Você também pode criar um novo arquivo usando o comando touch:
touch helloWorld.go
Agora, abra o arquivo e escreva o seguinte código:
package main
import "fmt"
func main() {
fmt.Println("hello, world")
}
A primeira linha, package main, indica que este programa pertence ao pacote main. A segunda linha, import "fmt", importa o pacote fmt do Go, que nos permite formatar a entrada e saída de texto. A função main é onde o programa inicia a execução, e dentro dela, fmt.Println("hello, world") imprimirá hello, world no terminal.
Para executar o programa, abra o terminal e digite o seguinte comando:
go run helloWorld.go
Se tudo estiver configurado corretamente, você deverá ver a saída:
hello, world
Este é um simples programa "Hello World". Agora, vamos explicar o código e as operações linha por linha.
Estrutura e Sintaxe do Programa
Em Go, um pacote é a unidade básica de gerenciamento de código. Todo programa Go começa com uma declaração package. Neste caso, package main informa ao Go que o código faz parte do programa principal que será executado.
A instrução import "fmt" importa o pacote fmt do Go, que é usado para entrada e saída. Go possui uma rica biblioteca padrão, que nos permite realizar muitas tarefas com facilidade. O pacote fmt é usado para formatar a saída de texto, como vimos no passo anterior.
Em seguida, definimos a função main:
func main() {
}
Em Go, todas as funções devem começar com func. Observe que a chave de abertura { é colocada no final da linha. Esta é uma convenção do Go, e é diferente de outras linguagens de programação que podem colocar a chave de abertura em uma nova linha.
Se você colocar incorretamente a chave de abertura em uma nova linha, assim:
func main()
{
}
Você receberá um erro de compilação:
$ go run helloWorld.go
### command-line-arguments
./helloWorld.go:7:1: syntax error: unexpected semicolon or newline before {
Isso ocorre porque o Go espera que a chave de abertura esteja diretamente na mesma linha.
A instrução chave no programa é fmt.Println("hello, world"), que chama a função Println do pacote fmt para imprimir a string "hello, world" no console. Esta função adiciona automaticamente um caractere de nova linha no final da string.
Executando o Programa
Go é uma linguagem compilada, mas quando usamos o comando go run, o Go primeiro compila o código-fonte e, em seguida, executa o executável resultante. Portanto, o comando:
go run helloWorld.go
é equivalente a executar estes dois comandos:
## Compile o programa
go build helloWorld.go
## Execute o programa compilado
./helloWorld
Para experimentar um novo exemplo, vamos modificar o programa para cumprimentar outros Gophers. Crie um novo arquivo chamado helloGopher.go e substitua o código por:
Você pode criar um novo arquivo usando o comando touch:
touch helloGopher.go
package main
import "fmt"
func main() {
fmt.Println("hello Gopher.")
fmt.Println("hello Gopher.")
fmt.Println("hello Gopher.")
}
Agora, em vez de usar go run, usaremos go build para compilar o programa e, em seguida, executaremos o executável gerado:
## Compile o programa
go build helloGopher.go
## Execute o executável compilado
./helloGopher
Isso produzirá a saída:
hello Gopher.
hello Gopher.
hello Gopher.
Funções Comuns no Pacote fmt
No Passo 1, usamos a função Println() do pacote fmt para imprimir a saída. O pacote fmt é um dos pacotes mais comumente usados em Go e oferece várias funções para formatar a saída.
Aqui estão três funções de saída comuns:
fmt.Print()– Imprime o texto sem uma nova linha.fmt.Println()– Imprime o texto com uma nova linha.fmt.Printf()– Imprime texto formatado.
Vamos explorar essas funções com mais detalhes. Crie um novo arquivo chamado fmt.go e insira o seguinte código:
package main
import "fmt"
func main() {
// Saída padrão
fmt.Print("hello")
fmt.Print("world")
// Println adiciona um caractere de nova linha após a saída padrão
fmt.Println()
fmt.Println("labex")
// Printf fornece saída formatada
fmt.Printf("%s\n", "London")
}
Execute o programa usando o comando go run:
go run fmt.go
Explicação:
fmt.Print("hello")efmt.Print("world")imprimem texto na mesma linha porquePrintnão adiciona uma nova linha.fmt.Println()imprime uma nova linha para separar as linhas.fmt.Printf("%s\n", "London")formata a saída usando o marcador de posição%spara a string "London".
Aqui está uma comparação rápida das funções:
| Função | Saída Padrão | Quebra de Linha | Saída Formatada |
|---|---|---|---|
Print |
√ | × | × |
Println |
√ | √ | × |
Printf |
× | × | √ |
O pacote fmt também fornece outras funções para ler entrada, tratamento de erros e muito mais, que serão abordadas em exercícios posteriores.
Resumo
Neste laboratório, escrevemos nosso primeiro programa em Go, aprendemos sobre a estrutura dos programas em Go e exploramos as funções básicas do pacote fmt para saída. Também praticamos a execução de programas em Go e aprendemos a diferença entre Print, Println e Printf. Agora você deve ter uma compreensão básica da sintaxe Go e da execução de programas.



