- Notifications
You must be signed in to change notification settings - Fork433
Home
Go101 edited this pageOct 24, 2022 ·75 revisions
Index:
- Slices related:
- How to perfectly clone a slice?
- How to efficiently clone a slice?
- There is not a perfect way to clone slices in Go.
- When inserting slice elements, to get the best efficiency, it is best not to use the builtin append function.
- Go is not C, so there is not an extreme fast way to merge slices.
- Some details about byte slices and rune slices in Go.
- The capacity of the result byte (or rune) slice of a conversion from a string is unspecified.
- The support of builtin slice manipulations in Go is incomplete.
- Three index slice uses are often verbose.
- Assignments related:
- Some evaluation orders in multi value assignments are unspecified.
- An ambiguity of (or dispute on) the evaluation order of LHS (left hand side) items in a multi value assignment.
- Why Go supports multi value assignments and the influences of this decision.
- A proposal to make Go simpler by removing the := redeclaration syntax.
- Personal opinions:
- About the terminology "reference type" in Go.
- The main sell point of Go is not simplicity, but overall balance and flexibility.
- Small design details I like in Go.
What are named types?- Writing qualified Go benchmarks is not easy.(2).(3).
- Channel in Go is a bonus feature, expect channels to solve all problems is a mistake.
- Some summaries:
- Immutable/read-only values related:
- Lacking support for immutable values is a potential security threat for Go programs.
- The benefits of supporting immutable and read only values.
- A proposal to avoid duplicating underlying bytes when using strings as read only []byte arguments.
- An immutable value proposal to let Go support final exported values.
- A proposal to support read-only and practical immutable values in Go.
- Go immutable value proposal list.
- More facts and details:
- Others
Please follow the official Twitter account ofGo 101,@zigo_101, to learn some Go details, facts, tips, etc, and read some Go articles from time to time.
Go 101 is a series of books about Go programming.
Books inGo 101 series
- Go (Fundamentals) 101 focuses on Go syntax/semantics (except custom generics related) and all kinds of runtime related things.
- Go Optimizations 101 provides some code performance optimization tricks, tips, and suggestions.
- Go Details & Tips 101 collects many details and provides several tips in Go programming.
- Go Generics 101 explains Go custom generics in detail.
Tapir started writing the Go 101 books and maintaining thego101.org website since 2016. New contents will continue being added to the books and the website from time to time. If you would like to, you can also supportGo 101 byplaying Tapir's games (for both Android and iPhone/iPad):
- Color Infection (★★★★★) - a physics based casual puzzle original game. 140+ levels.
- Rectangle Pushers (★★★★★) - a casual puzzle original game. 104+ levels.
- Let's Play With Particles - a casual action original game. Three game modes are included.