Go 101

Go 101 is a book focusing on Go syntax/semantics and all kinds of details (Go 1.14 ready). This book also tries to help gophers gain a deep and thorough understanding of Go. It is expected that this book is helpful for both beginner and experienced Go programmers.

the book
(about 500 pages)
The digital versions of this book are available at the following places: Tapir, the author of Go 101, has spent 3+ years on writing the Go 101 book and maintaining the go101.org website. New contents will continue being added to the book and the website from time to time. Tapir is also an indie game developer. If you would like to, you can support the book and the website by playing Tapir's games (made for both Android and iPhone/iPad). Individual donations are also accepted via PayPal.
2020/Jun/02: All "Go SDK" uses are changed to "Go Toolchain".
2020/Apr/22: runtime.KeepAlive calls are helpless in making some invalid unsafe.Pointer uses become valid. Some places in the Type-Unsafe Pointers article are adjusted for this. Please re-read this article for details. (I apologize for spreading the wrong information before in this article.)
Index: