mirror of
https://github.com/bootdotdev/fcc-learn-golang-assets.git
synced 2025-12-16 18:21:16 +00:00
44 lines
1.1 KiB
Markdown
44 lines
1.1 KiB
Markdown
# Go Proverbs
|
|
|
|
Similar to the [Zen of Python](https://peps.python.org/pep-0020/) that we covered in the "Learn Python" course, the [Go Proverbs](https://go-proverbs.github.io/) are a beautiful collection of wise words from Rob Pike, one of Go's creators.
|
|
|
|
> Don't communicate by sharing memory, share memory by communicating.
|
|
>
|
|
> Concurrency is not parallelism.
|
|
>
|
|
> Channels orchestrate; mutexes serialize.
|
|
>
|
|
> The bigger the interface, the weaker the abstraction.
|
|
>
|
|
> Make the zero value useful.
|
|
>
|
|
> interface{} says nothing.
|
|
>
|
|
> Gofmt's style is no one's favorite, yet gofmt is everyone's favorite.
|
|
>
|
|
> A little copying is better than a little dependency.
|
|
>
|
|
> Syscall must always be guarded with build tags.
|
|
>
|
|
> Cgo must always be guarded with build tags.
|
|
>
|
|
> Cgo is not Go.
|
|
>
|
|
> With the unsafe package there are no guarantees.
|
|
>
|
|
> Clear is better than clever.
|
|
>
|
|
> Reflection is never clear.
|
|
>
|
|
> Errors are values.
|
|
>
|
|
> Don't just check errors, handle them gracefully.
|
|
>
|
|
> Design the architecture, name the components, document the details.
|
|
>
|
|
> Documentation is for users.
|
|
>
|
|
> Don't panic.
|
|
|
|
@[youtube](https://www.youtube.com/watch?v=PAAkCSZUG1c)
|