A Go example
You'll need go
1.23 at least.
There's a Makefile
, so you can do:
$ make clean
$ make test
$ make
$ make run
If you run:
go install golang.org/x/tools/cmd/goimports@latest
go install github.com/daixiang0/gci@latest
go install mvdan.cc/gofumpt@latest
then you can do make fmt
to format all the source files.
If you go install
github.com/golangci/golangci-lint/cmd/golangci-lint@latest
, you can
also do make lint
to get a linting / critique of all the source
files (lint
runs fmt
first, so you need to have installed the
packages above as well).
Note that the Makefile
is for development, it's not used after the
code is built.
Structure
- the entry points go under
cmd/
, with a matching target in theMakefile
- the
factory
constructs all the singletons that actually do things (e.g. listeners, models, clients, business logic objects) - the
config
handles all configuration for the entire application