Go HowTo 101
Go Practices 101
Go Agg 101
Three new books, Go Optimizations 101,
Go Details & Tips 101
and Go Generics 101
are published now.
It is most cost-effective to buy all of them through this book bundle
in the Leanpub book store.
Go (Fundamentals) 101 Update History
- Go 1.18 added custom generics support. Several articles in Go 101 are adjusted accordingly, mainly including
- improve implicit method value evaluation explanations. Read this and this for details.
- support Go 1.16 embedding feature.
- point out that, since Go Toolchain 1.15, using make+copy to clone slices is always more efficient than using append to clone.
- remove the new detail added in 1.14.e: The behavior of comparing struct values with both comparable and incomparable fields or array values with both comparable and incomparable elements is unspecified. The reason is the behavior will be specified.
- add a new detail: About the impossible to-interface assertions which can be detected at compile time.
- All "Go SDK" uses are changed to "Go Toolchain".
- add a new detail: The behavior of comparing struct values with both comparable and incomparable fields or array values with both comparable and incomparable elements is unspecified.
- add a new detail: In struct value comparisons, blank fields will be ignored.
runtime.KeepAlive related concents are removed from Unsafe Pointers article.
I'm sorry for spreading some wrong information in this article before.
- I decided to withdraw the last erratum in 1.13.d. (Re-added in 1.14.d)
- remove the section containing a stupid code mistake from the "The Right Places to Call the recover Function" article.
- remove the inaccurate description "the address of a variable will never change"
- remove the "named type" and "unnamed type" terminology.
- adjust some discriptions in Type Embdding.
- a serious mistake was just fixed in this book.
Before, the book said the starting index in a subslice syntax
can't be larger than the length of the base slice. This is wrong.
Please read the corrected section again for details.
First release, though some articles are still not finished.
The digital versions of this book are available at the following places:
Individual donations via PayPal are also welcome.
Tapir, the author of Go 101, has been on writing the Go 101 series books
and maintaining the go101.org website since 2016 July.
New contents will be continually added to the book and the website from time to time.
Tapir is also an indie game developer.
You can also support Go 101 by playing Tapir's games
(made for both Android and iPhone/iPad):