🚀 Capítulo 01: O Nascimento do Gopher (Tema: Origem do Go)
NOTE
Este capítulo utiliza a história da criação do Go pelo Google para explicar as vantagens da linguagem. Conheça o mascote Gopher e dê seus primeiros passos!
1. 🎯 Objetivo da Aula
Compreender o que é a linguagem Go (ou Golang), por que ela foi criada pelo Google, suas principais vantagens (simplicidade e velocidade) e escrever o seu primeiro programa “Olá, Mundo!“.
2. 🏢 O Cenário Prático (Seu Desafio)
No início dos anos , o Google enfrentava um grande problema: os sistemas deles estavam ficando gigantescos e os computadores demoravam horas apenas para compilar (traduzir) o código antes de rodar. As linguagens da época eram ou muito lentas para rodar (como Python) ou muito complexas e demoradas para programar (como C++).
Então, três engenheiros geniais do Google se juntaram para criar uma linguagem perfeita para a nuvem: ela precisava ser simples de ler, ultra rápida para compilar e capaz de aguentar milhões de acessos simultâneos. Assim nasceu o Go!
- O mascote do Go é o Gopher (um esquilo/marmota fofinho).
- Mas não se engane pela fofura: o Go é a linguagem que move o Docker, o Kubernetes e os servidores do Google, Twitch e Uber! Seu desafio é dar vida ao seu primeiro Gopher!
🧠 Fundamentos: A Teoria Traduzida
🚀 1. Por que o Go é tão incrível?
- É Compilado: O código que você escreve é traduzido diretamente para a linguagem que o processador do computador entende. Por isso, ele roda na velocidade da luz!
- É Simples: Go foi feito para ser lido por humanos. Ele não tem coisas complexas de outras linguagens que só servem para confundir a cabeça do programador.
- Concorrência Nativa: Ele foi feito para a era da internet. O Go consegue executar milhares de tarefas ao mesmo tempo sem travar o computador (veremos isso no Módulo ).
🛠️ 2. A Estrutura Básica de um código Go:
Todo arquivo Go precisa seguir uma estrutura padrão:
package main: Diz que este arquivo é o principal e deve ser executado.import "fmt": Importa a biblioteca de formatação (para podermos escrever na tela).func main(): É a função principal. Tudo o que estiver dentro das chaves{}será executado pelo computador!
4. 📖 Exemplo Guiado: O Código Sagrado
Aqui está o clássico código para iniciar a sua jornada:
package main
import "fmt"
func main() {
fmt.Println("Olá, Mundo! O Gopher despertou!")
}Para rodar esse código no seu computador:
- Você salva o arquivo com o nome
main.go. - Abre o terminal na pasta do arquivo e digita o comando mágico:
go run main.go.
5. 🛠️ Prática Obrigatória 1: Entendendo a Estrutura
Com base no exemplo guiado, responda:
- Para que serve a linha
import "fmt"no código Go? O que acontece se tentarmos usar ofmt.Printlnsem essa linha?
6. 🛠️ Prática Obrigatória 2: O Comando de Execução
- Qual é o comando que digitamos no terminal para fazer o computador ler e executar o nosso arquivo Go sem precisar gerar um arquivo executável permanente?
7. 📤 Instruções de Entrega (GitHub Desktop + Microsoft Teams)
- Faça o Commit: No GitHub Desktop, digite a mensagem (ex:
Finaliza Capítulo 01 Go_Gopher) e clique em Commit to main. - Envie para a Nuvem (Push): Clique em Push origin.
8. 📂 Estrutura de Pastas
spec_backend_com_golang_e_gin/
├── capitulos/
│ └── capitulo_01_gopher.md💡 Checkpoint de Lógica
Em Go, as aspas duplas "" são obrigatórias para textos (strings). Se você usar aspas simples '', o Go vai achar que você está tentando representar um único caractere numérico (chamado de rune) e vai dar erro!
10. 🔥 Desafio de Fixação
Pesquise quais são os nomes dos três engenheiros do Google que criaram a linguagem Go em (Dica: um deles ajudou a criar o sistema operacional Unix!).
🔑 Gabarito de Código/Fórmulas
Gabarito da Prática 1:
- Serve para trazer para o nosso código as ferramentas de texto da biblioteca padrão do Go. Se tentarmos usar o
fmt.Printlnsem o import, o Go dará um erro dizendo que não conhece o comandofmt, pois ele não foi carregado na memória! Gabarito da Prática 2: - O comando é
go run nome_do_arquivo.go.