2024-05-06 20:40:05 +00:00
|
|
|
---
|
2024-10-29 18:27:12 +00:00
|
|
|
date: 2020-08-26
|
2024-05-06 20:40:05 +00:00
|
|
|
id: 3e8fc539-e90c-4278-a233-6158dbca89e4
|
|
|
|
title: Golang
|
|
|
|
---
|
|
|
|
|
|
|
|
# Language
|
|
|
|
|
|
|
|
## Basics
|
|
|
|
|
|
|
|
- [Packages](20200826142755-packages)
|
|
|
|
- [Functions](20200826151337-functions)
|
|
|
|
- [Variables](20200826151514-variables)
|
|
|
|
- [Flow control statements](20200826151846-flow_control_statements)
|
|
|
|
- [Tests](20200826191127-tests)
|
|
|
|
- [Tooling](20200826191508-tooling)
|
|
|
|
- [Pointers](20200828180957-pointers)
|
|
|
|
- [Structs](20200828181259-structs)
|
|
|
|
- [Arrays](20200828182327-arrays)
|
|
|
|
- [Slices](20200828182546-slices)
|
|
|
|
- [Maps](20200828192034-maps)
|
|
|
|
- [Methods](20200831155304-methods)
|
|
|
|
- [Interfaces](20200831171822-interfaces)
|
|
|
|
- [Errors](20200909202454-errors)
|
|
|
|
- [Reflection](20200917155644-reflection)
|
|
|
|
- [Context](20200921154246-context)
|
|
|
|
- [Embedding](20200928193245-embedding)
|
|
|
|
|
|
|
|
## Concurrency
|
|
|
|
|
|
|
|
- [Goroutines](20200901141141-goroutines)
|
|
|
|
|
|
|
|
### Sync
|
|
|
|
|
|
|
|
- [Mutex](20200918173820-mutex)
|
|
|
|
- [WaitGroup](20200918174548-waitgroup)
|
|
|
|
|
|
|
|
### Misc
|
|
|
|
|
|
|
|
- When to use sync.Mutex or a channel[^1]
|
|
|
|
|
|
|
|
## Libraries you should probably know about
|
|
|
|
|
|
|
|
- http[^2]
|
|
|
|
|
|
|
|
## Books & tutorials
|
|
|
|
|
|
|
|
- Go by Example[^3]
|
|
|
|
- Learn Go with tests[^4]
|
|
|
|
|
|
|
|
# Footnotes
|
|
|
|
|
|
|
|
[^1]: <https://faiface.github.io/post/context-should-go-away-go2/>
|
|
|
|
|
|
|
|
[^2]: <https://golang.org/pkg/net/http/>
|
|
|
|
|
|
|
|
[^3]: <https://gobyexample.com/>
|
|
|
|
|
|
|
|
[^4]: <https://quii.gitbook.io/learn-go-with-tests/>
|