Workspaces em Golang
Higor Diego
Posted on January 24, 2021
Em complemento ao artigo anterior referente a instalação do Golang , teremos que entender agora o conceito de Go Workspace, pois no momento da instalação o golang irá definir o local no qual o código ficará!
Por convenção, todo o seu código Go deve residir em um único espaço de trabalho chamado de worskpace. O workspace é que um diretório em seu sistema de arquivos cujo o caminho é armazenado na variável de ambiente GOTPATH.
No workspace temos três pasta:
1 - pkg
Nessa pasta ficará os pacotes compartilhados da aplicação golang.
2 - src
Nessa pasta é onde escrevesse o código fonte de cada aplicação.
3 - bin
Nessa pasta ficará os executáveis do programa.
A variável de ambiente chamada de GOPATH especifica a localização da workspace.
Caso não se sinta a vontade com diretório padrão do GOPATH, poderá modificar usando o simples comando no seu terminal.
$ mkdir $HOME/my_workspace
$ export GOPATH=$HOME/my_workspace
E para deixar sempre atualizado esse comando em seu terminal, salvar no arquivo ~/.bash_profile , e se utilizar o shell Zsh use o arquivo ~/.zshrc .
Segue o comando para salvar no arquivo:
export GOPATH=$HOME/my_workspace
O GOPATH por padrão fica no caminho de $HOME/go em sistema Unix e no Windows em %USERPROFILE%\go.
Como sempre utilizamos pacotes de terceiros para escrever o código, é preciso organizá-los de forma simples, com intuito de identificar a origem quando necessário.
Uma boa forma de utilizar a organização do import é usando uma pasta do Github dentro da sua workspace.
$HOME/my_workspace
├── bin
├── pkg
└── src
└── github.com
└── higordiego
├── slack_bot
└── pacote_example
Por fim, com a workspace configurada conforme orientado, será possível começar a escrever o códigos em golang.
Links úteis:
Golang Installation, Setup, GOPATH, and Go Workspace
Setup a Workspace for Go
How to Write Go Code (with GOPATH)
Próximos capítulos em breve.
Posted on January 24, 2021
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.