Ответ
"Язык программирования Go" Алан Донован, Брайан Керниган — must-read, охватывает основы и продвинутые темы.
"Concurrency in Go" Кэтрин Кокс-Будэй — глубокая работа по конкурентности (горутины, каналы, sync пакет).
"Go in Action" Уильям Кеннеди — практичные примеры, включая тестирование и работу с API.
Для перфоманса: "High Performance Go" — разбор оптимизаций, аллокаций, профилирования.
Дополнительно:
- Официальная документация (effectivego, blog.golang.org)
- "The Go Programming Language Phrasebook" для быстрых сниппетов
Пример из "Concurrency in Go":
select {
case v := <-ch:
fmt.Println(v)
case <-time.After(1 * time.Second):
fmt.Println("timeout")
}