I'm a beginner in golang, and I was reading the article How to write Go code on the go website. It explains how the typical Go structure contains three folders in the root of the project:
bin/
contains compiled code
pkg/
contains package objects
src/
contains the Go source files
So to learn from other projects I checked out some popular go projects in github, but to my surprise I don't see this src/pkg/bin structure in any of those projects.
What am I missing here? Does anybody know a (preferably simple) project in golang which follows this structure? I think I could learn a lot from reading other people's code.
The structure you reference in your question is not how projects are structured but rather how the local workspace is configured.
https://golang.org/doc/code.html#Workspaces
Typically, you'll set up one workspace in your local machine, for example you would set up your workspace root to be:
$HOME/go
You then point your GOPATH environment variable to $HOME/go
to let Go know that's your workspace location.
Inside your workspace you then create the src
, bin
and pkg
folders that the documentation describes.
Inside src
is where you checkout (or create your own) project folders.