- Vars de Ambiente:
- Verificar variáveis de ambiente:
$ go env
- GOROOT = aonde foi instalado (compiladores e ferramentas (SDK)) ->
$ go env GOROOT
- GOPATH = workspace de projetos ->
$ go env GOPATH
- Estrutura
- Abrir vs:
$ cd ~ && code go
- pasta bin = pasta de executáveis, ao gerar um executável ele virá para esta pasta 1. se add a pasta bin do go ao PATH do sistema, os executáveis desta estarão disponíveis como comandos
- pasta pkg = compilados por arquitetura de destino, sendo os ".a" os arquivos do projeto compilado
- pasta src = fontes, separado por mecanismos de versionamento (github, bitbucket, gitlab...)
- Para criar e rodar um projeto standalone não precisa colocar no GOPATH, quando for criar pacotes reutilizáveis é necessário criá-los dentro do GoPath
$ sudo nano ~/.zshrc
- add:
function code { if [[ $# = 0 ]] then open -a "Visual Studio" else local argPath="$1" [[ $1 = /* ]] && argPath="$1" || argPath="$PWD/${1#./}" open -a "Visual Studio" "$argPath" fi }
- todo programa go precisa rodar dentro de um pacote
- cada pasta com código go só pode ter uma função main
- /fundamentos/primeiro/primeiro.go
$ go
-> exibe comandos disponiveis no go$ go help comando
help de um comando especifico, ex.:$ go help get
, esse é usado para baixar pacotes do github- Documentação do Go offline:
$ godoc -http=:6060
$ go doc cmd/vet
-> exibe documentação deste comando específico$ go build comandos.go
-> cria um executável:$ ./comandos
$ go run comandos.go
-> cria um executável e executa- Instalando dependencia (driver sql):
$ go get -u github.com/go-sql-driver/mysql
, verificar se foi instalado:$ ls ~/go/src/github.com/
- Executando todos arquivos .go:
- acessar o pacote, exemplo:
$ cd fundamentos/funcoes
- rodar run go all:
$ go run *.go
- acessar o pacote, exemplo: