3 - Criar projeto e configurar servidor HTTP

Chegou a hora de sairmos da teoria e colocarmos a mão na massa! Nesta aula, vamos preparar o ambiente do nosso projeto e escrever o código necessário para colocar um servidor web funcional de pé utilizando apenas as ferramentas nativas do Go.

Passo 1: Criando a pasta do projeto

O primeiro passo é criar um local organizado para guardar os arquivos da nossa API. Para este exemplo, faremos o seguinte:

  • Vá até a sua Área de Trabalho (Desktop).
  • Crie uma nova pasta chamada api_alunos.

Nota: Fique à vontade para escolher outro diretório no seu computador ou utilizar o nome de sua preferência para a pasta, se assim desejar.

Passo 2: Abrindo o projeto no VSCode

Com a pasta criada, precisamos abrir esse diretório dentro do nosso editor de código para começar a trabalhar:

  • Abra o Visual Studio Code (VSCode).
  • No menu superior, clique em File (Arquivo) e depois em Open Folder... (Abrir Pasta...).
  • Navegue até a Área de Trabalho, selecione a pasta api_alunos que acabamos de criar e clique em abrir.

Passo 3: Inicializando o módulo do Go

Para que o Go consiga gerenciar o nosso projeto, dependências e compilações de forma correta, precisamos inicializar um módulo. Vamos fazer isso através do terminal integrado do VSCode:

  • Abra o terminal do VSCode pressionando as teclas Ctrl + ` (ou indo no menu superior em Terminal -> New Terminal).
  • Digite o comando abaixo e pressione Enter:
go mod init api_alunos

Esse comando vai gerar um arquivo chamado go.mod na raiz da sua pasta, indicando que este diretório agora é um módulo oficial do Go.

Passo 4: Criando o arquivo principal e escrevendo o código

Agora, crie um novo arquivo dentro da pasta chamado main.go. Este será o ponto de partida de toda a nossa aplicação. Abra o arquivo e digite a estrutura de código abaixo:

// Pacote principal da aplicação
package main

// Importações dos pacotes nativos
import (
	"fmt"
	"net/http"
)

// Função principal que inicia o programa
func main() {

	// Exibe uma mensagem no terminal informando o funcionamento do servidor
	fmt.Println("Servidor em execução no endereço: http://localhost:8080")

	// Configura e inicia o servidor HTTP na porta 8080
	// O valor nil indica que usaremos o roteador padrão do pacote http
	http.ListenAndServe(":8080", nil)

}

Passo 5: Testando o servidor

Com o arquivo salvo, volte ao seu terminal do VSCode e digite o comando para executar o programa:

go run main.go

Você verá a mensagem de confirmação no terminal. O cursor ficará "travado", o que significa que o seu servidor Go está ativo e aguardando conexões na porta 8080!

Você pode acompanhar cada etapa descrita acima no vídeo a seguir: