🚩 NOTA: É importante entender que o ambiente de desenvolvimento é necessário estar configurado para os próximos passos.
1. Inicializando o projeto
Para inicializarmos o nosso primeiro em Go, basta criar uma pasta e dentro dela em seu terminal, executar o comando:
$ go mod init hello-world
Uma vez feito isso, um arquivo de chamado go.mod
irá aparecer na pasta do projeto, esse arquivo é responsável por gerenciar a versão do Go utilizada no projeto, assim como as suas dependências (Falaremos sobre isso em outros tópicos).
Crie um arquivo chamado main.go
na raiz do projeto, e cole o trecho de código abaixo.
package main
import "fmt"
// A função main é o ponto de entrada de um aplicação Go.
// O pacote também precisa ser definido como main,
// para que possamos "buildar" ou executar a aplicação.
func main() {
// O pacote fmt é responável pela formatação,
// porém também podemos utilizá-lo para ler
// e escrever dados para o terminal.
fmt.Println("Qual o seu nome?")
// Variáveis em Go, podem ser declaradas
// seguindo o padrão: palavra-chave + identificador + tipo
var name string
// Scanf é responsável por ler o input do terminal
// e atribuir ela a variável acima, o uso do &(ponteiro),
// será abordado em outros artigos.
fmt.Scanf("%s", &name)
fmt.Println("Olá", name)
}
Podemos executar a aplicação de duas maneira, a primeira é compilando o código e executando o seu binário e a segunda é utilizando o Go para executar o código.
1.1 Compilando e executando
Para compilar o código, precisamos executar o comando:
# [build] Responsável por compilar o nosso código.
# [-o] Será o nosso "output", ou seja o nosso arquivo de saída.
# [.] Estamos indicando que o arquivo de entrada está no mesmo nível de pasta que o nosso.
$ go build -o app .
Agora com o código compilado, podemos executar o mesmo pelo terminal, a saída será parecida com essa:
$ Qual o seu nome?
Alexandre
$ Olá Alexandre
1.2 Executando com o comando go run
# [run] Inicializa a nossa aplicação sem a necessidade de compilar e executar o binário.
# [.] Estamos indicando que o arquivo de entrada está no mesmo nível de pasta que o nosso.
$ go run .
A saída do código deverá corresponder a saída acima. A única coisa que mudou foi a forma como rodamos a nossa aplicação.