Difference between revisions of "Go"
Jump to navigation
Jump to search
Line 55: | Line 55: | ||
== See also == | == See also == | ||
* https://en.wikipedia.org/wiki/Go_(programming_language)#Version_history | * https://en.wikipedia.org/wiki/Go_(programming_language)#Version_history | ||
+ | * {{go tool}} | ||
* {{Go}} | * {{Go}} | ||
[[Category:Programming]] | [[Category:Programming]] | ||
[[Category:Go]] | [[Category:Go]] |
Revision as of 09:05, 8 August 2024
wikipedia:Go (programming language) (Nov 2009)
Installation
- macOS:
brew install go
- Ubuntu:
apt install golang-go
(aprox 500MB)
wget https://go.dev/dl/go1.20.3.linux-arm64.tar.gz rm -rf /usr/local/go && tar -C /usr/local -xzf go1.20.3.linux-arm64.tar.gz && export PATH=$PATH:/usr/local/go/bin && go version
Commands
go help
go build
, which builds Go binaries using only information in the source files themselves, no separate makefilesgo install
go test
, for unit testing and microbenchmarksgo fmt
, for formatting codego get
, for retrieving and installing remote packagesgo vet
, a static analyzer looking for potential errors in codego run
, a shortcut for building and executing codegodoc
, for displaying documentation or serving it via HTTPgorename
, for renaming variables, functions, and so on in a type-safe waygo generate
, a standard way to invoke code generatorsgo mod init
go list
- go tool
Examples
Activities
- Read go FAQs: https://go.dev/doc/faq#goroutines
Projects
- Kubernetes (2014)
- GVisor (2018)
- Grafana (2014)
Errors
Related
- Class Inheritance: embedding and interfaces (duck typing)
net/http
channels
- https://pkg.go.dev/std
defer
$HOME/go/bin/
- Concurrency vs parallelism
See also
- https://en.wikipedia.org/wiki/Go_(programming_language)#Version_history
- go tool, pprof
- Go, Gorutine:
go [ mod
|list
|fmt
,for
|build
|get
|version
|env | install | test
]go help
, Go template, Echo go web framework, Go packages, Blank identifier
Advertising: