Exercício - Hello World
Nesta seção, você escreverá seu primeiro programa Go para imprimir uma mensagem na tela. Este exercício é uma maneira típica de começar em uma linguagem de programação. Você aprenderá mais sobre a interface de linha de comando (CLI) Go e como criar e executar um aplicativo Go.
Configurar o IDE para abrir a partir da CLI
Você pode abrir o IDE de código do Visual Studio no prompt da CLI e começar a editar os arquivos em seu espaço de trabalho atual. Esse recurso IDE é implementado usando a variável de ambiente do sistema $PATH (ou $Path). Quando o recurso está habilitado, você pode usar o comando da CLI para abrir o code .
IDE e editar arquivos no diretório atual.
Algumas instalações do Visual Studio Code adicionam suporte para a CLI à variável $PATH por padrão. Poderá ver esta opção durante o processo de instalação. Se você já tiver essa configuração configurada, estará tudo pronto. Caso contrário, talvez seja necessário executar as etapas a seguir para usar esse recurso.
Linux ou macOS
Siga estas etapas para registrar a CLI do Visual Studio Code em sua variável de ambiente $PATH:
Abra o Visual Studio Code.
Em Exibir, selecione Paleta de comandos.
Na caixa de pesquisa, digite o comando shell. À medida que você digita, os resultados são filtrados.
Escolha o comando Shell: Install 'code' no comando PATH .
Feche o prompt de comando ou terminal aberto.
Importante
Se você tiver um prompt aberto do exericse anterior, feche o prompt e abra um novo prompt. Esta etapa é necessária para que o novo valor $PATH entre em vigor.
Feche o código do Visual Studio.
Windows
Siga estas etapas para adicionar o local da CLI de código do Visual Studio à variável de ambiente do sistema $Path:
Nota
Se você estiver familiarizado com variáveis de ambiente e souber como adicionar um novo local à sua variável de sistema $Path, poderá usar o método que funciona melhor para você. O procedimento a seguir é um pouco longo, mas é um método verificado para garantir que a variável seja atualizada corretamente.
Abra o Painel de Controle do Windows.
Selecione Sistema e, em seguida, selecione Configurações avançadas do sistema.
Na caixa de diálogo Propriedades do sistema, em Avançado, selecione Variáveis de ambiente. A caixa de diálogo Editar variáveis de ambiente é aberta.
A caixa de diálogo Editar variáveis de ambiente mostra duas listas:
- Variáveis de usuário para nome> de usuário: definições de variáveis locais para <o usuário específico.
- Variáveis de sistema: definições de variáveis de sistema para todos os usuários.
Neste procedimento, estamos trabalhando com as variáveis do sistema.
Na caixa de diálogo Variáveis de ambiente, na caixa de listagem Variáveis do sistema, role até localizar a variável Path.
Selecione a variável Path para realçar a linha. Selecione Editar. A caixa de diálogo Editar variáveis de ambiente é aberta. A caixa de diálogo lista todos os locais de pasta definidos na variável.
Na caixa de diálogo Editar variáveis de ambiente, selecione Novo. Uma linha vazia é aberta no final da lista.
Na linha vazia, insira o local do executável da CLI do Visual Studio Code. Substitua
<user-name>
pelo seu nome de usuário.C:\Users\<user-name>\AppData\Local\Programs\Microsoft VS Code\bin
Selecione OK para fechar cada caixa de diálogo.
Feche a caixa de diálogo Propriedades do sistema e o Painel de Controle do Windows.
Etapa 1: Abra o espaço de trabalho Go e o IDE
Depois de confirmar que o Visual Studio Code está pronto para uso a partir da CLI, você pode abrir seu espaço de trabalho Go.
Abra um novo prompt de Comando ou Terminal.
Abra o diretório do espaço de trabalho Go executando o seguinte comando:
cd $GOPATH/src
cd %GOPATH%/src
Use o seguinte comando para abrir o Visual Studio Code do seu espaço de trabalho:
code .
O Visual Studio Code é iniciado. O modo de exibição Explorer é mostrado à esquerda e uma página de boas-vindas está à direita.
Na visualização Explorer, a seção SRC do seu projeto Go deve estar aberta (expandida). Esta seção é a pasta /src do seu projeto. Atualmente está vazio, mas adicionaremos algum conteúdo na próxima etapa.
Etapa 2: Criar uma nova pasta e um arquivo Go
Vamos adicionar uma pasta e um arquivo ao seu projeto Go. Há várias maneiras no Visual Studio Code para criar novos itens:
- Ações no menu da barra de ferramentas:
- Selecione Abrir pasta Arquivo>e, em seguida, crie uma nova pasta.
- Selecione Arquivo>Novo arquivo e inicie um novo arquivo.
- Links na página Bem-vindo , que são semelhantes às ações do menu da barra de ferramentas.
- Ícones na vista Explorer, à direita da secção SRC:
- Selecione o ícone Nova pasta . Na caixa de texto, digite o nome da pasta e pressione Enter.
- Selecione o ícone Novo arquivo . Na caixa de texto, digite o nome do arquivo e pressione Enter.
Conclua as etapas a seguir no Visual Studio Code. Para criar o novo arquivo e pasta, use o processo que funciona melhor para você.
Crie uma nova pasta chamada helloworld.
Crie um novo arquivo chamado main.go para o código do seu aplicativo.
Expanda a visualização SRC do Explorer>para mostrar sua árvore de estrutura de pastas. Deve ser semelhante a este exemplo:
SRC/
Helloworld/
main.go
Instalar ferramentas de extensão Go
Se main.go for o primeiro arquivo Go aberto no Visual Studio Code, você poderá ser solicitado a instalar outras ferramentas para a extensão Go. Quando lhe for pedido, selecione Instalar. Um Terminal é aberto na parte inferior do IDE para mostrar a saída do processo. Você deve ver a saída como este exemplo:
Ambiente de ferramentas: GOPATH=C:\Projects\Go
Instalação de 5 ferramentas em C:\Projects\Go\bin no modo módulo.
Instalação github.com/uudashr/gopkgs/v2/cmd/gopkgs (C:\Projects\Go\bin\gopkgs.exe) BEM-SUCEDIDA
Durante o processo de instalação, verifique a barra de status no Visual Studio Code. Se vir uma mensagem no canto inferior direito, como "Todas as ferramentas não instaladas", selecione a mensagem. No pop-up, selecione Instalar.
Quando o processo de instalação é bem-sucedido, a saída do Terminal exibe um resumo:
Todas as ferramentas instaladas com sucesso. Você está pronto para ir :).
Passo 3: Adicionar código ao ficheiro Go
Agora vamos adicionar código ao seu arquivo Go.
No arquivo main.go, adicione o seguinte código:
package main import "fmt" func main() { fmt.Println("Hello World!") }
Guarde o ficheiro.
Não se preocupe com a formatação de código, como separadores ou espaços. O Visual Studio Code formata o código automaticamente sempre que você salva o arquivo.
Passo 4: Execute o programa Go
O programa Go pode ser executado em um prompt de comando ou terminal, ou em um terminal que é executado dentro do Visual Studio Code.
Você pode usar um prompt existente ou abrir um novo. Se você abrir um novo prompt, lembre-se de alterar o local do diretório para o espaço de trabalho Go. Certifique-se também de executar o programa a partir da pasta que tem o seu ficheiro Go: $GOPATH/src/helloworld.
Abrir um Terminal dentro do Visual Studio Code
Se você quiser executar o programa de dentro do Visual Studio Code, em vez de um prompt de comando ou terminal autônomo, execute estas etapas:
No Visual Studio Code, selecione Terminal e, em seguida, selecione Novo Terminal.
Na caixa suspensa no canto superior direito do Terminal, selecione Novo Prompt de Comando.
No Terminal, execute o seguinte comando para alterar o local do diretório para o espaço de trabalho Go e a pasta que contém o arquivo Go:
cd $GOPATH/src/helloworld
cd %GOPATH%/src/helloworld
Execute seu aplicativo Go
Para executar o aplicativo Go, use o seguinte comando no Terminal ou prompt:
go run main.go
Deverá ver o seguinte resultado:
Hello World!
O go run
comando faz duas coisas. Ele compila o aplicativo e, depois que a compilação é bem-sucedida, ele executa o aplicativo.
Construir um executável
Para gerar um executável para o seu programa, use este comando:
go build main.go
Quando o go build
comando é concluído, ele gera um aplicativo executável que você pode executar a qualquer momento sem processamento adicional. O comando produz apenas um executável. Ele não executa o programa como o go run
comando.
Revise o conteúdo /src
Veja como seu projeto deve ser agora na visualização SRC do Explorer>:
SRC/
Helloworld/
main
main.go
Na visualização Explorer, o nome do arquivo sem a extensão é o arquivo executável que você pode usar para executar o programa. (No Windows, este arquivo realmente tem a extensão .exe .) Quando você está desenvolvendo, você usa o go run
comando. Para criar os binários para seu aplicativo, use o comando e implante o go build
executável binário em um ambiente adequado.
O que você acabou de escrever em Go?
Você criou seu primeiro aplicativo Go e garantiu que ele fosse compilado e executado. Vamos examinar o código linha por linha.
Começaremos com a primeira declaração no seu ficheiro Go:
package main
A package main
declaração é como dizemos ao Go que o aplicativo que estamos criando é um programa executável (um arquivo que você pode executar). Nosso aplicativo "Hello World!" faz parte do main
pacote. Um pacote é um conjunto de arquivos de código-fonte comuns. Cada aplicativo executável tem essa primeira linha, mesmo que o projeto ou arquivo tenha um nome diferente.
Veremos mais de perto esses conceitos no próximo módulo. Por enquanto, precisamos saber que todos os programas executáveis devem fazer parte do main
pacote.
Desafio: alterar o nome do pacote
Pode confirmar a importância do main
pacote?
- No arquivo Go, altere o nome do pacote na primeira linha.
- Salve o arquivo e execute o programa novamente no Terminal.
O que acontece? Você vê "Hello World!"? É produzido um executável binário?
Mostrar Resposta
"Olá Mundo!" não é exibido. Um executável binário não é produzido. Você deve ver um erro: 'go run: cannot run non-main package'. Porquê? Cada programa executável deve fazer parte do pacote 'principal'.
Aqui está a próxima linha no seu arquivo Go:
import "fmt"
A import
instrução dá acesso ao seu programa a outro código em pacotes diferentes. Neste caso, fmt é um pacote de biblioteca padrão. Você pode ler sobre o pacote fmt no site oficial de documentação do Go.
Você precisa dessa import
instrução porque está usando uma função deste pacote para imprimir uma mensagem na tela mais tarde no programa. Você pode incluir quantas import
instruções quiser ou precisar em seu programa. No entanto, Go é idiomática a este respeito. Se você importar um pacote, mas não usar uma função correspondente do pacote, o aplicativo não será compilado. Um ótimo recurso do Visual Studio Code é que ele remove automaticamente as importações não utilizadas em um programa quando você salva o arquivo.
O Visual Studio Code removeu a importação quando você salvou o arquivo? Tente editar o arquivo sem o Visual Studio Code e tente executar o aplicativo. Que resultados vê agora?
Desafio: Adicionar outra importação
Você pode verificar o que aprendeu sobre importações não utilizadas?
- Restaure o ficheiro Go para o código original.
- Adicione outra instrução de importação como
math
ouio
. - Salve o arquivo e execute o programa novamente no Terminal.
O que acontece? O Visual Studio Code remove a importação não utilizada? Em caso afirmativo, quando é suprimido?
- Edite seu arquivo Go novamente, mas não use o Visual Studio Code.
- Salve o arquivo e execute o programa em um novo prompt.
O que acontece? Que resultados vê agora?
Mostrar Resposta
Se você editar seu arquivo Go no IDE, quando salvar o arquivo, o Visual Studio Code detetará quaisquer pacotes não utilizados e removerá as instruções 'import' correspondentes. Quando você edita seu arquivo Go fora do Visual Studio Code, o código falha. Você deve ver um erro, como: '# command-line-arguments .\main.go:5:2: importado e não usado: "math"'.
Vamos ver o bloco de código no seu arquivo Go:
func main() {
fmt.Println("Hello World!")
}
A func
instrução é uma palavra reservada que é usada para declarar uma função. Esta primeira função é chamada de "principal" porque é o ponto de partida do nosso programa. Você pode ter apenas uma main()
função em toda a (a package main
que você definiu na primeira linha). main()
Na função, você chamou a Println
função do fmt
pacote. Você enviou uma mensagem de texto que queria ver na tela.
Há mais para abordar sobre funções, e faremos isso no próximo módulo.