mirror of
https://github.com/teivah/100-go-mistakes.git
synced 2026-06-25 02:46:53 +08:00
Clearer introduction, external
This commit is contained in:
parent
3e7b2f6621
commit
53e0980ced
25 changed files with 570 additions and 154 deletions
BIN
.cache/plugin/social/e4eb5bc578adbed8e1467370dc660724.png
Normal file
BIN
.cache/plugin/social/e4eb5bc578adbed8e1467370dc660724.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 23 KiB |
14
docs/book.md
14
docs/book.md
|
|
@ -5,15 +5,13 @@ hide:
|
||||||
|
|
||||||
# 100 Go Mistakes and How to Avoid Them
|
# 100 Go Mistakes and How to Avoid Them
|
||||||
|
|
||||||
Community space of 📖 _100 Go Mistakes and How to Avoid Them_, published by Manning in 2022.
|
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
## Description
|
## Description
|
||||||
|
|
||||||
If you're a Go developer looking to improve your skills, this book is for you. With a focus on practical examples, _100 Go Mistakes and How to Avoid Them_ covers a wide range of topics from concurrency and error handling to testing and code organization. You'll learn to write more idiomatic, efficient, and maintainable code and become a proficient Go developer.
|
If you're a Go developer looking to improve your skills, the _100 Go Mistakes and How to Avoid Them_ book is for you. With a focus on practical examples, this book covers a wide range of topics from concurrency and error handling to testing and code organization. You'll learn to write more idiomatic, efficient, and maintainable code and become a proficient Go developer.
|
||||||
|
|
||||||
Read a summary of the 100 mistakes [here](https://100go.co).
|
Read a [summary](index.md) of the 100 mistakes or the [first chapter](chapter-1.md).
|
||||||
|
|
||||||
## Quotes and Ratings
|
## Quotes and Ratings
|
||||||
|
|
||||||
|
|
@ -43,17 +41,21 @@ Read a summary of the 100 mistakes [here](https://100go.co).
|
||||||
## Where to Buy?
|
## Where to Buy?
|
||||||
|
|
||||||
* _100 Go Mistakes and How to Avoid Them_ (🇬🇧 edition: paper, digital, or audiobook)
|
* _100 Go Mistakes and How to Avoid Them_ (🇬🇧 edition: paper, digital, or audiobook)
|
||||||
* [Manning](https://www.manning.com/books/100-go-mistakes-and-how-to-avoid-them) (make sure to use my personal discount code for -35%: `au35har`)
|
* [Manning](https://www.manning.com/books/100-go-mistakes-and-how-to-avoid-them) (please make sure to use my personal discount code for -35%: `au35har`)
|
||||||
* [O’Reilly](https://www.oreilly.com/library/view/100-go-mistakes/9781617299599/)
|
* [O’Reilly](https://www.oreilly.com/library/view/100-go-mistakes/9781617299599/)
|
||||||
* Amazon: [.com](https://www.amazon.com/dp/1617299596), [.co.uk](https://www.amazon.co.uk/dp/B0BBSNJR6B), [.de](https://www.amazon.de/dp/B0BBHQD8BQ), [.fr](https://www.amazon.fr/100-Mistakes-How-Avoid-Them/dp/1617299596), [.in](https://www.amazon.in/dp/B0BBHQD8BQ), [.co.jp](https://www.amazon.co.jp/dp/B0BBHQD8BQ), [.es](https://www.amazon.es/dp/B0BBHQD8BQ), [.it](https://www.amazon.it/dp/B0BBHQD8BQ), [.com.br](https://www.amazon.com.br/dp/B0BBHQD8BQ)
|
* Amazon: [.com](https://www.amazon.com/dp/1617299596), [.co.uk](https://www.amazon.co.uk/dp/B0BBSNJR6B), [.de](https://www.amazon.de/dp/B0BBHQD8BQ), [.fr](https://www.amazon.fr/100-Mistakes-How-Avoid-Them/dp/1617299596), [.in](https://www.amazon.in/dp/B0BBHQD8BQ), [.co.jp](https://www.amazon.co.jp/dp/B0BBHQD8BQ), [.es](https://www.amazon.es/dp/B0BBHQD8BQ), [.it](https://www.amazon.it/dp/B0BBHQD8BQ), [.com.br](https://www.amazon.com.br/dp/B0BBHQD8BQ)
|
||||||
|
|
||||||
* _Go言語100Tips 開発者にありがちな間違いへの対処法_ (🇯🇵 edition: paper or digital)
|
* _Go言語100Tips 開発者にありがちな間違いへの対処法_ (🇯🇵 edition: paper or digital)
|
||||||
* Amazon: [.co.jp](https://www.amazon.co.jp/exec/obidos/ASIN/4295017531/)
|
* Amazon: [.co.jp](https://www.amazon.co.jp/exec/obidos/ASIN/4295017531/)
|
||||||
|
|
||||||
|
* _100个Go语言典型错误_ (🇨🇳 edition: paper or digital)
|
||||||
|
* [Douban.com](https://read.douban.com/ebook/455919353/)
|
||||||
|
|
||||||
<figure markdown>
|
<figure markdown>
|
||||||
{width="200"}
|
{width="200"}
|
||||||
{width="200"}
|
{width="200"}
|
||||||
<figcaption>English and Japanese covers</figcaption>
|
{width="170"}
|
||||||
|
<figcaption>Covers</figcaption>
|
||||||
</figure>
|
</figure>
|
||||||
|
|
||||||
## About the Author
|
## About the Author
|
||||||
|
|
|
||||||
|
|
@ -1,30 +1,70 @@
|
||||||
---
|
|
||||||
hide:
|
|
||||||
- toc
|
|
||||||
---
|
|
||||||
|
|
||||||
# External Resources
|
# External Resources
|
||||||
|
|
||||||
## English
|
## English
|
||||||
|
|
||||||
* Book Review: 100 Go Mistakes and How to Avoid Them: [Post](https://boldlygo.tech/posts/2023-08-09-review-100-go-mistakes/), [YouTube](https://www.youtube.com/watch?v=tcRYU9g5wtw)
|
### The Best Golang Book | Prime Reacts
|
||||||
* The Most Useful Book for a Go Programmer?: [YouTube](https://www.youtube.com/watch?v=8pqgv4_Yjq0)
|
|
||||||
* How to make mistakes in Go - Go Time #190: [Episode](https://changelog.com/gotime/190), [Spotify](https://open.spotify.com/episode/0K1DImrxHCy6E7zVY4AxMZ?si=akroInsPQ1mM5B5V2tHLUw&dl_branch=1)
|
<iframe width="560" height="315" src="https://www.youtube.com/embed/a-lYYYr-5a8?si=hWm7um5GS19KVbog" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
|
||||||
* [8LU - 100% Test Coverage](https://youtu.be/V3FBDav6wgQ?t=1210)
|
|
||||||
* [Some Tips I learned from 100 Mistakes in Go](https://raygervais.dev/articles/2023/04/100_mistakes_in_go/)
|
### Book Review: 100 Go Mistakes (And How to Avoid Them)
|
||||||
* [What can be summarized from 100 Go Mistakes?](https://www.sobyte.net/post/2023-05/summarized-from-100-go-mistakes/)
|
|
||||||
|
<iframe width="560" height="315" src="https://www.youtube.com/embed/tcRYU9g5wtw?si=2s10hXwxL7ButfRm" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
|
||||||
|
|
||||||
|
[Post](https://boldlygo.tech/posts/2023-08-09-review-100-go-mistakes/)
|
||||||
|
|
||||||
|
### The Most Useful Book for a Go Programmer?
|
||||||
|
|
||||||
|
<iframe width="560" height="315" src="https://www.youtube.com/embed/8pqgv4_Yjq0?si=CunG1j2Uh2isXm4b" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
|
||||||
|
|
||||||
|
### How to make mistakes in Go - Go Time #190
|
||||||
|
|
||||||
|
<iframe width="560" height="315" src="https://www.youtube.com/embed/VGOgDqDe30E?si=HErewJsxDjie92AU" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
|
||||||
|
|
||||||
|
* [Episode](https://changelog.com/gotime/190)
|
||||||
|
* [Spotify](https://open.spotify.com/episode/0K1DImrxHCy6E7zVY4AxMZ?si=akroInsPQ1mM5B5V2tHLUw&dl_branch=1)
|
||||||
|
|
||||||
|
### Go is AMAZING
|
||||||
|
|
||||||
|
<iframe width="560" height="315" src="https://www.youtube.com/embed/iQBdVqnB0Ss?si=6lX1-oj28s_OZPwp&start=281" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
|
||||||
|
|
||||||
|
### 8LU - 100% Test Coverage
|
||||||
|
|
||||||
|
<iframe width="560" height="315" src="https://www.youtube.com/embed/V3FBDav6wgQ?si=iA58zxZHQewKF6Jz&start=1210" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
|
||||||
|
|
||||||
|
### Some Tips I learned from 100 Mistakes in Go
|
||||||
|
|
||||||
|
[Post](https://raygervais.dev/articles/2023/04/100_mistakes_in_go/)
|
||||||
|
|
||||||
|
### What can be summarized from 100 Go Mistakes?
|
||||||
|
|
||||||
|
[Post](https://www.sobyte.net/post/2023-05/summarized-from-100-go-mistakes/)
|
||||||
|
|
||||||
## Chinese
|
## Chinese
|
||||||
|
|
||||||
* [深度阅读之《100 Go Mistakes and How to Avoid Them](https://qcrao.com/post/100-go-mistakes-reading-notes/)
|
### 深度阅读之《100 Go Mistakes and How to Avoid Them
|
||||||
* [100 Go Mistakes 随记](https://zhuanlan.zhihu.com/p/592602656)
|
|
||||||
* [我为什么放弃Go语言?](https://juejin.cn/post/7241452578125824061)
|
[Post](https://qcrao.com/post/100-go-mistakes-reading-notes/)
|
||||||
|
|
||||||
|
### 100 Go Mistakes 随记
|
||||||
|
|
||||||
|
[Post](https://zhuanlan.zhihu.com/p/592602656)
|
||||||
|
|
||||||
|
### 我为什么放弃Go语言?
|
||||||
|
|
||||||
|
[Post](https://juejin.cn/post/7241452578125824061)
|
||||||
|
|
||||||
## Japanese
|
## Japanese
|
||||||
|
|
||||||
* [最近読んだGo言語の本の紹介:100 Go Mistakes and How to Avoid Them](https://qiita.com/kentaro_suzuki/items/c9c31dc81217f237433c)
|
### 最近読んだGo言語の本の紹介:100 Go Mistakes and How to Avoid Them
|
||||||
* [『100 Go Mistakes and How to Avoid Them』を読む](https://zenn.dev/yukibobier/books/066f07c8a59fa0)
|
|
||||||
|
[Post](https://qiita.com/kentaro_suzuki/items/c9c31dc81217f237433c)
|
||||||
|
|
||||||
|
### 『100 Go Mistakes and How to Avoid Them』を読む
|
||||||
|
|
||||||
|
[Post](https://zenn.dev/yukibobier/books/066f07c8a59fa0)
|
||||||
|
|
||||||
## Portuguese
|
## Portuguese
|
||||||
|
|
||||||
* [Um ÓTIMO livro para programadores Go](https://www.youtube.com/watch?v=34XShL_jWD4)
|
### Um ÓTIMO livro para programadores Go
|
||||||
|
|
||||||
|
<iframe width="560" height="315" src="https://www.youtube.com/embed/34XShL_jWD4?si=WQZR3QexpwEZ9-EU" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
|
||||||
|
|
|
||||||
BIN
docs/img/cover-cn.jpg
Normal file
BIN
docs/img/cover-cn.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 40 KiB |
|
|
@ -4,11 +4,11 @@ comments: true
|
||||||
|
|
||||||
# Common Go Mistakes
|
# Common Go Mistakes
|
||||||
|
|
||||||
This page is a summary of all the mistakes in the 100 Go Mistakes book. Meanwhile, it's also a page open to the community. If you believe that a mistake should be added, please create a [community mistake issue](https://github.com/teivah/100-go-mistakes/issues/new?assignees=&labels=community+mistake&template=community_mistake.md&title=).
|
This page is a summary of the mistakes in the [100 Go Mistakes and How to Avoid Them book](book.md). Meanwhile, it's also open to the community. If you believe that a common Go mistake should be added, please create an [issue](https://github.com/teivah/100-go-mistakes/issues/new?assignees=&labels=community+mistake&template=community_mistake.md&title=).
|
||||||
|
|
||||||
???+ warning
|
???+ warning
|
||||||
|
|
||||||
You're currently viewing a new version that I'm enriching with significantly more content. Yet, this version is still under development; please be gentle if you find an issue, and feel free to create a PR.
|
You're viewing a new version enriched with significantly more content. However, this version is not yet complete, and we're looking for volunteers to summarize the remaining mistakes ([GitHub issue #43](https://github.com/teivah/100-go-mistakes/issues/43)).
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
|
|
@ -236,10 +236,10 @@ func WithPort(port int) Option {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewServer(addr string, opts ...Option) ( *http.Server, error) { <1>
|
func NewServer(addr string, opts ...Option) ( *http.Server, error) {
|
||||||
var options options <2>
|
var options options
|
||||||
for _, opt := range opts { <3>
|
for _, opt := range opts {
|
||||||
err := opt(&options) <4>
|
err := opt(&options)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
@ -2133,3 +2133,11 @@ Read the full section [here](98-profiling-execution-tracing.md).
|
||||||
???+ info "TL;DR"
|
???+ info "TL;DR"
|
||||||
|
|
||||||
To help avoid CPU throttling when deployed in Docker and Kubernetes, keep in mind that Go isn’t CFS-aware.
|
To help avoid CPU throttling when deployed in Docker and Kubernetes, keep in mind that Go isn’t CFS-aware.
|
||||||
|
|
||||||
|
## Community
|
||||||
|
|
||||||
|
Thanks to all the contributors:
|
||||||
|
|
||||||
|
<a href="https://contrib.rocks/image?repo=teivah/100-go-mistakes">
|
||||||
|
<img src="https://contrib.rocks/image?repo=teivah/100-go-mistakes" alt="Description of the image">
|
||||||
|
</a>
|
||||||
|
|
|
||||||
|
|
@ -65,7 +65,7 @@ nav:
|
||||||
- book.md
|
- book.md
|
||||||
- chapter-1.md
|
- chapter-1.md
|
||||||
- external.md
|
- external.md
|
||||||
- ⭐ Go Mistakes:
|
- 💡️ Go Mistakes:
|
||||||
- index.md
|
- index.md
|
||||||
- Full Sections:
|
- Full Sections:
|
||||||
- 9-generics.md
|
- 9-generics.md
|
||||||
|
|
|
||||||
|
|
@ -1,5 +0,0 @@
|
||||||
{% extends "base.html" %}
|
|
||||||
|
|
||||||
{% block htmltitle %}
|
|
||||||
<title>100 Go Mistakes</title>
|
|
||||||
{% endblock %}
|
|
||||||
|
|
@ -21,7 +21,9 @@
|
||||||
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
||||||
|
|
||||||
|
|
||||||
<title>100 Go Mistakes</title>
|
|
||||||
|
<title>Not understanding slice length and capacity (#20) - 100 Go Mistakes and How to Avoid Them</title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
||||||
|
|
@ -319,7 +321,7 @@
|
||||||
<a href=".." class="md-tabs__link">
|
<a href=".." class="md-tabs__link">
|
||||||
|
|
||||||
|
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
@ -522,7 +524,7 @@
|
||||||
|
|
||||||
|
|
||||||
<span class="md-ellipsis">
|
<span class="md-ellipsis">
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -532,7 +534,7 @@
|
||||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="true">
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="true">
|
||||||
<label class="md-nav__title" for="__nav_2">
|
<label class="md-nav__title" for="__nav_2">
|
||||||
<span class="md-nav__icon md-icon"></span>
|
<span class="md-nav__icon md-icon"></span>
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</label>
|
</label>
|
||||||
<ul class="md-nav__list" data-md-scrollfix>
|
<ul class="md-nav__list" data-md-scrollfix>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,9 @@
|
||||||
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
||||||
|
|
||||||
|
|
||||||
<title>100 Go Mistakes</title>
|
|
||||||
|
<title>Maps and memory leaks (#28) - 100 Go Mistakes and How to Avoid Them</title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
||||||
|
|
@ -319,7 +321,7 @@
|
||||||
<a href=".." class="md-tabs__link">
|
<a href=".." class="md-tabs__link">
|
||||||
|
|
||||||
|
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
@ -522,7 +524,7 @@
|
||||||
|
|
||||||
|
|
||||||
<span class="md-ellipsis">
|
<span class="md-ellipsis">
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -532,7 +534,7 @@
|
||||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="true">
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="true">
|
||||||
<label class="md-nav__title" for="__nav_2">
|
<label class="md-nav__title" for="__nav_2">
|
||||||
<span class="md-nav__icon md-icon"></span>
|
<span class="md-nav__icon md-icon"></span>
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</label>
|
</label>
|
||||||
<ul class="md-nav__list" data-md-scrollfix>
|
<ul class="md-nav__list" data-md-scrollfix>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,9 @@
|
||||||
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
||||||
|
|
||||||
|
|
||||||
<title>100 Go Mistakes</title>
|
|
||||||
|
<title>100 Go Mistakes and How to Avoid Them</title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link rel="stylesheet" href="/assets/stylesheets/main.7e359304.min.css">
|
<link rel="stylesheet" href="/assets/stylesheets/main.7e359304.min.css">
|
||||||
|
|
@ -271,7 +273,7 @@
|
||||||
<a href="/." class="md-tabs__link">
|
<a href="/." class="md-tabs__link">
|
||||||
|
|
||||||
|
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
@ -469,7 +471,7 @@
|
||||||
|
|
||||||
|
|
||||||
<span class="md-ellipsis">
|
<span class="md-ellipsis">
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -479,7 +481,7 @@
|
||||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
|
||||||
<label class="md-nav__title" for="__nav_2">
|
<label class="md-nav__title" for="__nav_2">
|
||||||
<span class="md-nav__icon md-icon"></span>
|
<span class="md-nav__icon md-icon"></span>
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</label>
|
</label>
|
||||||
<ul class="md-nav__list" data-md-scrollfix>
|
<ul class="md-nav__list" data-md-scrollfix>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,9 @@
|
||||||
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
||||||
|
|
||||||
|
|
||||||
<title>100 Go Mistakes</title>
|
|
||||||
|
<title>Thinking concurrency is always faster (#56) - 100 Go Mistakes and How to Avoid Them</title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
||||||
|
|
@ -319,7 +321,7 @@
|
||||||
<a href=".." class="md-tabs__link">
|
<a href=".." class="md-tabs__link">
|
||||||
|
|
||||||
|
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
@ -522,7 +524,7 @@
|
||||||
|
|
||||||
|
|
||||||
<span class="md-ellipsis">
|
<span class="md-ellipsis">
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -532,7 +534,7 @@
|
||||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="true">
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="true">
|
||||||
<label class="md-nav__title" for="__nav_2">
|
<label class="md-nav__title" for="__nav_2">
|
||||||
<span class="md-nav__icon md-icon"></span>
|
<span class="md-nav__icon md-icon"></span>
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</label>
|
</label>
|
||||||
<ul class="md-nav__list" data-md-scrollfix>
|
<ul class="md-nav__list" data-md-scrollfix>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,9 @@
|
||||||
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
||||||
|
|
||||||
|
|
||||||
<title>100 Go Mistakes</title>
|
|
||||||
|
<title>Writing inaccurate benchmarks (#89) - 100 Go Mistakes and How to Avoid Them</title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
||||||
|
|
@ -319,7 +321,7 @@
|
||||||
<a href=".." class="md-tabs__link">
|
<a href=".." class="md-tabs__link">
|
||||||
|
|
||||||
|
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
@ -522,7 +524,7 @@
|
||||||
|
|
||||||
|
|
||||||
<span class="md-ellipsis">
|
<span class="md-ellipsis">
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -532,7 +534,7 @@
|
||||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="true">
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="true">
|
||||||
<label class="md-nav__title" for="__nav_2">
|
<label class="md-nav__title" for="__nav_2">
|
||||||
<span class="md-nav__icon md-icon"></span>
|
<span class="md-nav__icon md-icon"></span>
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</label>
|
</label>
|
||||||
<ul class="md-nav__list" data-md-scrollfix>
|
<ul class="md-nav__list" data-md-scrollfix>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,9 @@
|
||||||
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
||||||
|
|
||||||
|
|
||||||
<title>100 Go Mistakes</title>
|
|
||||||
|
<title>Being confused about when to use generics (#9) - 100 Go Mistakes and How to Avoid Them</title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
||||||
|
|
@ -319,7 +321,7 @@
|
||||||
<a href=".." class="md-tabs__link">
|
<a href=".." class="md-tabs__link">
|
||||||
|
|
||||||
|
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
@ -522,7 +524,7 @@
|
||||||
|
|
||||||
|
|
||||||
<span class="md-ellipsis">
|
<span class="md-ellipsis">
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -532,7 +534,7 @@
|
||||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="true">
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="true">
|
||||||
<label class="md-nav__title" for="__nav_2">
|
<label class="md-nav__title" for="__nav_2">
|
||||||
<span class="md-nav__icon md-icon"></span>
|
<span class="md-nav__icon md-icon"></span>
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</label>
|
</label>
|
||||||
<ul class="md-nav__list" data-md-scrollfix>
|
<ul class="md-nav__list" data-md-scrollfix>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,9 @@
|
||||||
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
||||||
|
|
||||||
|
|
||||||
<title>100 Go Mistakes</title>
|
|
||||||
|
<title>Not using Go diagnostics tooling (#98) - 100 Go Mistakes and How to Avoid Them</title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
||||||
|
|
@ -317,7 +319,7 @@
|
||||||
<a href=".." class="md-tabs__link">
|
<a href=".." class="md-tabs__link">
|
||||||
|
|
||||||
|
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
@ -520,7 +522,7 @@
|
||||||
|
|
||||||
|
|
||||||
<span class="md-ellipsis">
|
<span class="md-ellipsis">
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -530,7 +532,7 @@
|
||||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="true">
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="true">
|
||||||
<label class="md-nav__title" for="__nav_2">
|
<label class="md-nav__title" for="__nav_2">
|
||||||
<span class="md-nav__icon md-icon"></span>
|
<span class="md-nav__icon md-icon"></span>
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</label>
|
</label>
|
||||||
<ul class="md-nav__list" data-md-scrollfix>
|
<ul class="md-nav__list" data-md-scrollfix>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,9 @@
|
||||||
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
||||||
|
|
||||||
|
|
||||||
<title>100 Go Mistakes</title>
|
|
||||||
|
<title>100 Go Mistakes and How to Avoid Them - 100 Go Mistakes and How to Avoid Them</title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
||||||
|
|
@ -317,7 +319,7 @@
|
||||||
<a href=".." class="md-tabs__link">
|
<a href=".." class="md-tabs__link">
|
||||||
|
|
||||||
|
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
@ -596,7 +598,7 @@
|
||||||
|
|
||||||
|
|
||||||
<span class="md-ellipsis">
|
<span class="md-ellipsis">
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -606,7 +608,7 @@
|
||||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
|
||||||
<label class="md-nav__title" for="__nav_2">
|
<label class="md-nav__title" for="__nav_2">
|
||||||
<span class="md-nav__icon md-icon"></span>
|
<span class="md-nav__icon md-icon"></span>
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</label>
|
</label>
|
||||||
<ul class="md-nav__list" data-md-scrollfix>
|
<ul class="md-nav__list" data-md-scrollfix>
|
||||||
|
|
||||||
|
|
@ -897,11 +899,10 @@
|
||||||
|
|
||||||
|
|
||||||
<h1 id="100-go-mistakes-and-how-to-avoid-them">100 Go Mistakes and How to Avoid Them</h1>
|
<h1 id="100-go-mistakes-and-how-to-avoid-them">100 Go Mistakes and How to Avoid Them</h1>
|
||||||
<p>Community space of 📖 <em>100 Go Mistakes and How to Avoid Them</em>, published by Manning in 2022.</p>
|
|
||||||
<p><a class="glightbox" href="../img/cover.png" data-type="image" data-width="auto" data-height="auto" data-desc-position="bottom"><img alt="" src="../img/cover.png" /></a></p>
|
<p><a class="glightbox" href="../img/cover.png" data-type="image" data-width="auto" data-height="auto" data-desc-position="bottom"><img alt="" src="../img/cover.png" /></a></p>
|
||||||
<h2 id="description">Description</h2>
|
<h2 id="description">Description</h2>
|
||||||
<p>If you're a Go developer looking to improve your skills, this book is for you. With a focus on practical examples, <em>100 Go Mistakes and How to Avoid Them</em> covers a wide range of topics from concurrency and error handling to testing and code organization. You'll learn to write more idiomatic, efficient, and maintainable code and become a proficient Go developer.</p>
|
<p>If you're a Go developer looking to improve your skills, the <em>100 Go Mistakes and How to Avoid Them</em> book is for you. With a focus on practical examples, this book covers a wide range of topics from concurrency and error handling to testing and code organization. You'll learn to write more idiomatic, efficient, and maintainable code and become a proficient Go developer.</p>
|
||||||
<p>Read a summary of the 100 mistakes <a href="https://100go.co">here</a>.</p>
|
<p>Read a <a href="../">summary</a> of the 100 mistakes or the <a href="../chapter-1/">first chapter</a>.</p>
|
||||||
<h2 id="quotes-and-ratings">Quotes and Ratings</h2>
|
<h2 id="quotes-and-ratings">Quotes and Ratings</h2>
|
||||||
<div class="admonition quote">
|
<div class="admonition quote">
|
||||||
<p class="admonition-title">Krystian (Goodreads user)</p>
|
<p class="admonition-title">Krystian (Goodreads user)</p>
|
||||||
|
|
@ -931,7 +932,7 @@
|
||||||
<li>
|
<li>
|
||||||
<p><em>100 Go Mistakes and How to Avoid Them</em> (🇬🇧 edition: paper, digital, or audiobook)</p>
|
<p><em>100 Go Mistakes and How to Avoid Them</em> (🇬🇧 edition: paper, digital, or audiobook)</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li><a href="https://www.manning.com/books/100-go-mistakes-and-how-to-avoid-them">Manning</a> (make sure to use my personal discount code for -35%: <code>au35har</code>)</li>
|
<li><a href="https://www.manning.com/books/100-go-mistakes-and-how-to-avoid-them">Manning</a> (please make sure to use my personal discount code for -35%: <code>au35har</code>)</li>
|
||||||
<li><a href="https://www.oreilly.com/library/view/100-go-mistakes/9781617299599/">O’Reilly</a></li>
|
<li><a href="https://www.oreilly.com/library/view/100-go-mistakes/9781617299599/">O’Reilly</a></li>
|
||||||
<li>Amazon: <a href="https://www.amazon.com/dp/1617299596">.com</a>, <a href="https://www.amazon.co.uk/dp/B0BBSNJR6B">.co.uk</a>, <a href="https://www.amazon.de/dp/B0BBHQD8BQ">.de</a>, <a href="https://www.amazon.fr/100-Mistakes-How-Avoid-Them/dp/1617299596">.fr</a>, <a href="https://www.amazon.in/dp/B0BBHQD8BQ">.in</a>, <a href="https://www.amazon.co.jp/dp/B0BBHQD8BQ">.co.jp</a>, <a href="https://www.amazon.es/dp/B0BBHQD8BQ">.es</a>, <a href="https://www.amazon.it/dp/B0BBHQD8BQ">.it</a>, <a href="https://www.amazon.com.br/dp/B0BBHQD8BQ">.com.br</a></li>
|
<li>Amazon: <a href="https://www.amazon.com/dp/1617299596">.com</a>, <a href="https://www.amazon.co.uk/dp/B0BBSNJR6B">.co.uk</a>, <a href="https://www.amazon.de/dp/B0BBHQD8BQ">.de</a>, <a href="https://www.amazon.fr/100-Mistakes-How-Avoid-Them/dp/1617299596">.fr</a>, <a href="https://www.amazon.in/dp/B0BBHQD8BQ">.in</a>, <a href="https://www.amazon.co.jp/dp/B0BBHQD8BQ">.co.jp</a>, <a href="https://www.amazon.es/dp/B0BBHQD8BQ">.es</a>, <a href="https://www.amazon.it/dp/B0BBHQD8BQ">.it</a>, <a href="https://www.amazon.com.br/dp/B0BBHQD8BQ">.com.br</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
@ -942,12 +943,19 @@
|
||||||
<li>Amazon: <a href="https://www.amazon.co.jp/exec/obidos/ASIN/4295017531/">.co.jp</a></li>
|
<li>Amazon: <a href="https://www.amazon.co.jp/exec/obidos/ASIN/4295017531/">.co.jp</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<p><em>100个Go语言典型错误</em> (🇨🇳 edition: paper or digital)</p>
|
||||||
|
<ul>
|
||||||
|
<li><a href="https://read.douban.com/ebook/455919353/">Douban.com</a></li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<figure>
|
<figure>
|
||||||
<p><a class="glightbox" href="../img/cover-en.jpg" data-type="image" data-width="auto" data-height="auto" data-desc-position="bottom"><img alt="" src="../img/cover-en.jpg" width="200" /></a>
|
<p><a class="glightbox" href="../img/cover-en.jpg" data-type="image" data-width="auto" data-height="auto" data-desc-position="bottom"><img alt="" src="../img/cover-en.jpg" width="200" /></a>
|
||||||
<a class="glightbox" href="../img/cover-jp.jpg" data-type="image" data-width="auto" data-height="auto" data-desc-position="bottom"><img alt="" src="../img/cover-jp.jpg" width="200" /></a>
|
<a class="glightbox" href="../img/cover-jp.jpg" data-type="image" data-width="auto" data-height="auto" data-desc-position="bottom"><img alt="" src="../img/cover-jp.jpg" width="200" /></a>
|
||||||
|
<a class="glightbox" href="../img/cover-cn.jpg" data-type="image" data-width="auto" data-height="auto" data-desc-position="bottom"><img alt="" src="../img/cover-cn.jpg" width="170" /></a>
|
||||||
</p>
|
</p>
|
||||||
<figcaption>English and Japanese covers</figcaption>
|
<figcaption>Covers</figcaption>
|
||||||
</figure>
|
</figure>
|
||||||
<h2 id="about-the-author">About the Author</h2>
|
<h2 id="about-the-author">About the Author</h2>
|
||||||
<p><a href="https://teivah.dev">Teiva Harsanyi</a> is a senior software engineer at Google. He has worked in various domains, including insurance, transportation, and safety-critical industries like air traffic management. He is passionate about Go and how to design and implement reliable systems.</p>
|
<p><a href="https://teivah.dev">Teiva Harsanyi</a> is a senior software engineer at Google. He has worked in various domains, including insurance, transportation, and safety-critical industries like air traffic management. He is passionate about Go and how to design and implement reliable systems.</p>
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,9 @@
|
||||||
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
||||||
|
|
||||||
|
|
||||||
<title>100 Go Mistakes</title>
|
|
||||||
|
<title>Read the First Chapter - 100 Go Mistakes and How to Avoid Them</title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
||||||
|
|
@ -319,7 +321,7 @@
|
||||||
<a href=".." class="md-tabs__link">
|
<a href=".." class="md-tabs__link">
|
||||||
|
|
||||||
|
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
@ -667,7 +669,7 @@
|
||||||
|
|
||||||
|
|
||||||
<span class="md-ellipsis">
|
<span class="md-ellipsis">
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -677,7 +679,7 @@
|
||||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
|
||||||
<label class="md-nav__title" for="__nav_2">
|
<label class="md-nav__title" for="__nav_2">
|
||||||
<span class="md-nav__icon md-icon"></span>
|
<span class="md-nav__icon md-icon"></span>
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</label>
|
</label>
|
||||||
<ul class="md-nav__list" data-md-scrollfix>
|
<ul class="md-nav__list" data-md-scrollfix>
|
||||||
|
|
||||||
|
|
|
||||||
372
site/external/index.html
vendored
372
site/external/index.html
vendored
|
|
@ -21,7 +21,9 @@
|
||||||
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
||||||
|
|
||||||
|
|
||||||
<title>100 Go Mistakes</title>
|
|
||||||
|
<title>External Resources - 100 Go Mistakes and How to Avoid Them</title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
||||||
|
|
@ -319,7 +321,7 @@
|
||||||
<a href=".." class="md-tabs__link">
|
<a href=".." class="md-tabs__link">
|
||||||
|
|
||||||
|
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
@ -344,8 +346,6 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
|
<div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
|
||||||
<div class="md-sidebar__scrollwrap">
|
<div class="md-sidebar__scrollwrap">
|
||||||
<div class="md-sidebar__inner">
|
<div class="md-sidebar__inner">
|
||||||
|
|
@ -525,6 +525,84 @@
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|
<nav class="md-nav" aria-label="English">
|
||||||
|
<ul class="md-nav__list">
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#the-best-golang-book-prime-reacts" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
The Best Golang Book | Prime Reacts
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#book-review-100-go-mistakes-and-how-to-avoid-them" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
Book Review: 100 Go Mistakes (And How to Avoid Them)
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#the-most-useful-book-for-a-go-programmer" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
The Most Useful Book for a Go Programmer?
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#how-to-make-mistakes-in-go-go-time-190" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
How to make mistakes in Go - Go Time #190
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#go-is-amazing" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
Go is AMAZING
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#8lu-100-test-coverage" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
8LU - 100% Test Coverage
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#some-tips-i-learned-from-100-mistakes-in-go" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
Some Tips I learned from 100 Mistakes in Go
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#what-can-be-summarized-from-100-go-mistakes" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
What can be summarized from 100 Go Mistakes?
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="md-nav__item">
|
<li class="md-nav__item">
|
||||||
|
|
@ -534,6 +612,39 @@
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|
<nav class="md-nav" aria-label="Chinese">
|
||||||
|
<ul class="md-nav__list">
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#100-go-mistakes-and-how-to-avoid-them" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
深度阅读之《100 Go Mistakes and How to Avoid Them
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#100-go-mistakes" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
100 Go Mistakes 随记
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#go" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
我为什么放弃Go语言?
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="md-nav__item">
|
<li class="md-nav__item">
|
||||||
|
|
@ -543,6 +654,30 @@
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|
<nav class="md-nav" aria-label="Japanese">
|
||||||
|
<ul class="md-nav__list">
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#go100-go-mistakes-and-how-to-avoid-them" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
最近読んだGo言語の本の紹介:100 Go Mistakes and How to Avoid Them
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#100-go-mistakes-and-how-to-avoid-them_1" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
『100 Go Mistakes and How to Avoid Them』を読む
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="md-nav__item">
|
<li class="md-nav__item">
|
||||||
|
|
@ -552,6 +687,21 @@
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|
<nav class="md-nav" aria-label="Portuguese">
|
||||||
|
<ul class="md-nav__list">
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#um-otimo-livro-para-programadores-go" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
Um ÓTIMO livro para programadores Go
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
|
|
@ -598,7 +748,7 @@
|
||||||
|
|
||||||
|
|
||||||
<span class="md-ellipsis">
|
<span class="md-ellipsis">
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -608,7 +758,7 @@
|
||||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
|
||||||
<label class="md-nav__title" for="__nav_2">
|
<label class="md-nav__title" for="__nav_2">
|
||||||
<span class="md-nav__icon md-icon"></span>
|
<span class="md-nav__icon md-icon"></span>
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</label>
|
</label>
|
||||||
<ul class="md-nav__list" data-md-scrollfix>
|
<ul class="md-nav__list" data-md-scrollfix>
|
||||||
|
|
||||||
|
|
@ -824,9 +974,7 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
|
||||||
|
|
||||||
<div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" hidden>
|
|
||||||
<div class="md-sidebar__scrollwrap">
|
<div class="md-sidebar__scrollwrap">
|
||||||
<div class="md-sidebar__inner">
|
<div class="md-sidebar__inner">
|
||||||
|
|
||||||
|
|
@ -851,6 +999,84 @@
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|
<nav class="md-nav" aria-label="English">
|
||||||
|
<ul class="md-nav__list">
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#the-best-golang-book-prime-reacts" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
The Best Golang Book | Prime Reacts
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#book-review-100-go-mistakes-and-how-to-avoid-them" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
Book Review: 100 Go Mistakes (And How to Avoid Them)
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#the-most-useful-book-for-a-go-programmer" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
The Most Useful Book for a Go Programmer?
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#how-to-make-mistakes-in-go-go-time-190" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
How to make mistakes in Go - Go Time #190
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#go-is-amazing" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
Go is AMAZING
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#8lu-100-test-coverage" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
8LU - 100% Test Coverage
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#some-tips-i-learned-from-100-mistakes-in-go" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
Some Tips I learned from 100 Mistakes in Go
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#what-can-be-summarized-from-100-go-mistakes" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
What can be summarized from 100 Go Mistakes?
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="md-nav__item">
|
<li class="md-nav__item">
|
||||||
|
|
@ -860,6 +1086,39 @@
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|
<nav class="md-nav" aria-label="Chinese">
|
||||||
|
<ul class="md-nav__list">
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#100-go-mistakes-and-how-to-avoid-them" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
深度阅读之《100 Go Mistakes and How to Avoid Them
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#100-go-mistakes" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
100 Go Mistakes 随记
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#go" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
我为什么放弃Go语言?
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="md-nav__item">
|
<li class="md-nav__item">
|
||||||
|
|
@ -869,6 +1128,30 @@
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|
<nav class="md-nav" aria-label="Japanese">
|
||||||
|
<ul class="md-nav__list">
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#go100-go-mistakes-and-how-to-avoid-them" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
最近読んだGo言語の本の紹介:100 Go Mistakes and How to Avoid Them
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#100-go-mistakes-and-how-to-avoid-them_1" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
『100 Go Mistakes and How to Avoid Them』を読む
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="md-nav__item">
|
<li class="md-nav__item">
|
||||||
|
|
@ -878,6 +1161,21 @@
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|
<nav class="md-nav" aria-label="Portuguese">
|
||||||
|
<ul class="md-nav__list">
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#um-otimo-livro-para-programadores-go" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
Um ÓTIMO livro para programadores Go
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
|
|
@ -900,30 +1198,48 @@
|
||||||
|
|
||||||
<h1 id="external-resources">External Resources</h1>
|
<h1 id="external-resources">External Resources</h1>
|
||||||
<h2 id="english">English</h2>
|
<h2 id="english">English</h2>
|
||||||
|
<h3 id="the-best-golang-book-prime-reacts">The Best Golang Book | Prime Reacts</h3>
|
||||||
|
<iframe width="560" height="315" src="https://www.youtube.com/embed/a-lYYYr-5a8?si=hWm7um5GS19KVbog" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
|
||||||
|
|
||||||
|
<h3 id="book-review-100-go-mistakes-and-how-to-avoid-them">Book Review: 100 Go Mistakes (And How to Avoid Them)</h3>
|
||||||
|
<iframe width="560" height="315" src="https://www.youtube.com/embed/tcRYU9g5wtw?si=2s10hXwxL7ButfRm" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
|
||||||
|
|
||||||
|
<p><a href="https://boldlygo.tech/posts/2023-08-09-review-100-go-mistakes/">Post</a></p>
|
||||||
|
<h3 id="the-most-useful-book-for-a-go-programmer">The Most Useful Book for a Go Programmer?</h3>
|
||||||
|
<iframe width="560" height="315" src="https://www.youtube.com/embed/8pqgv4_Yjq0?si=CunG1j2Uh2isXm4b" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
|
||||||
|
|
||||||
|
<h3 id="how-to-make-mistakes-in-go-go-time-190">How to make mistakes in Go - Go Time #190</h3>
|
||||||
|
<iframe width="560" height="315" src="https://www.youtube.com/embed/VGOgDqDe30E?si=HErewJsxDjie92AU" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
|
||||||
|
|
||||||
<ul>
|
<ul>
|
||||||
<li>Book Review: 100 Go Mistakes and How to Avoid Them: <a href="https://boldlygo.tech/posts/2023-08-09-review-100-go-mistakes/">Post</a>, <a href="https://www.youtube.com/watch?v=tcRYU9g5wtw">YouTube</a></li>
|
<li><a href="https://changelog.com/gotime/190">Episode</a></li>
|
||||||
<li>How to make mistakes in Go - Go Time #190: <a href="https://changelog.com/gotime/190">Episode</a>, <a href="https://open.spotify.com/episode/0K1DImrxHCy6E7zVY4AxMZ?si=akroInsPQ1mM5B5V2tHLUw&dl_branch=1">Spotify</a></li>
|
<li><a href="https://open.spotify.com/episode/0K1DImrxHCy6E7zVY4AxMZ?si=akroInsPQ1mM5B5V2tHLUw&dl_branch=1">Spotify</a></li>
|
||||||
<li><a href="https://youtu.be/V3FBDav6wgQ?t=1210">8LU - 100% Test Coverage</a></li>
|
|
||||||
<li><a href="https://raygervais.dev/articles/2023/04/100_mistakes_in_go/">Some Tips I learned from 100 Mistakes in Go</a></li>
|
|
||||||
<li><a href="https://www.sobyte.net/post/2023-05/summarized-from-100-go-mistakes/">What can be summarized from 100 Go Mistakes?</a></li>
|
|
||||||
</ul>
|
</ul>
|
||||||
|
<h3 id="go-is-amazing">Go is AMAZING</h3>
|
||||||
|
<iframe width="560" height="315" src="https://www.youtube.com/embed/iQBdVqnB0Ss?si=6lX1-oj28s_OZPwp&start=281" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
|
||||||
|
|
||||||
|
<h3 id="8lu-100-test-coverage">8LU - 100% Test Coverage</h3>
|
||||||
|
<iframe width="560" height="315" src="https://www.youtube.com/embed/V3FBDav6wgQ?si=iA58zxZHQewKF6Jz&start=1210" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
|
||||||
|
|
||||||
|
<h3 id="some-tips-i-learned-from-100-mistakes-in-go">Some Tips I learned from 100 Mistakes in Go</h3>
|
||||||
|
<p><a href="https://raygervais.dev/articles/2023/04/100_mistakes_in_go/">Post</a></p>
|
||||||
|
<h3 id="what-can-be-summarized-from-100-go-mistakes">What can be summarized from 100 Go Mistakes?</h3>
|
||||||
|
<p><a href="https://www.sobyte.net/post/2023-05/summarized-from-100-go-mistakes/">Post</a></p>
|
||||||
<h2 id="chinese">Chinese</h2>
|
<h2 id="chinese">Chinese</h2>
|
||||||
<ul>
|
<h3 id="100-go-mistakes-and-how-to-avoid-them">深度阅读之《100 Go Mistakes and How to Avoid Them</h3>
|
||||||
<li><a href="https://qcrao.com/post/100-go-mistakes-reading-notes/">深度阅读之《100 Go Mistakes and How to Avoid Them</a></li>
|
<p><a href="https://qcrao.com/post/100-go-mistakes-reading-notes/">Post</a></p>
|
||||||
<li><a href="https://zhuanlan.zhihu.com/p/592602656">100 Go Mistakes 随记</a></li>
|
<h3 id="100-go-mistakes">100 Go Mistakes 随记</h3>
|
||||||
<li><a href="https://juejin.cn/post/7241452578125824061">我为什么放弃Go语言?</a></li>
|
<p><a href="https://zhuanlan.zhihu.com/p/592602656">Post</a></p>
|
||||||
</ul>
|
<h3 id="go">我为什么放弃Go语言?</h3>
|
||||||
|
<p><a href="https://juejin.cn/post/7241452578125824061">Post</a></p>
|
||||||
<h2 id="japanese">Japanese</h2>
|
<h2 id="japanese">Japanese</h2>
|
||||||
<ul>
|
<h3 id="go100-go-mistakes-and-how-to-avoid-them">最近読んだGo言語の本の紹介:100 Go Mistakes and How to Avoid Them</h3>
|
||||||
<li><a href="https://qiita.com/kentaro_suzuki/items/c9c31dc81217f237433c">最近読んだGo言語の本の紹介:100 Go Mistakes and How to Avoid Them</a></li>
|
<p><a href="https://qiita.com/kentaro_suzuki/items/c9c31dc81217f237433c">Post</a></p>
|
||||||
<li><a href="https://zenn.dev/yukibobier/books/066f07c8a59fa0">『100 Go Mistakes and How to Avoid Them』を読む</a></li>
|
<h3 id="100-go-mistakes-and-how-to-avoid-them_1">『100 Go Mistakes and How to Avoid Them』を読む</h3>
|
||||||
</ul>
|
<p><a href="https://zenn.dev/yukibobier/books/066f07c8a59fa0">Post</a></p>
|
||||||
<h2 id="portuguese">Portuguese</h2>
|
<h2 id="portuguese">Portuguese</h2>
|
||||||
<ul>
|
<h3 id="um-otimo-livro-para-programadores-go">Um ÓTIMO livro para programadores Go</h3>
|
||||||
<li><a href="https://www.youtube.com/watch?v=34XShL_jWD4">Um ÓTIMO livro para programadores Go</a></li>
|
<iframe width="560" height="315" src="https://www.youtube.com/embed/34XShL_jWD4?si=WQZR3QexpwEZ9-EU" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
|
||||||
</ul>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
BIN
site/img/cover-cn.jpg
Normal file
BIN
site/img/cover-cn.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 40 KiB |
|
|
@ -21,7 +21,9 @@
|
||||||
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
||||||
|
|
||||||
|
|
||||||
<title>100 Go Mistakes</title>
|
|
||||||
|
<title>Common Go Mistakes - 100 Go Mistakes and How to Avoid Them</title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link rel="stylesheet" href="assets/stylesheets/main.7e359304.min.css">
|
<link rel="stylesheet" href="assets/stylesheets/main.7e359304.min.css">
|
||||||
|
|
@ -319,7 +321,7 @@
|
||||||
<a href="." class="md-tabs__link">
|
<a href="." class="md-tabs__link">
|
||||||
|
|
||||||
|
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
@ -520,7 +522,7 @@
|
||||||
|
|
||||||
|
|
||||||
<span class="md-ellipsis">
|
<span class="md-ellipsis">
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -530,7 +532,7 @@
|
||||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="true">
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="true">
|
||||||
<label class="md-nav__title" for="__nav_2">
|
<label class="md-nav__title" for="__nav_2">
|
||||||
<span class="md-nav__icon md-icon"></span>
|
<span class="md-nav__icon md-icon"></span>
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</label>
|
</label>
|
||||||
<ul class="md-nav__list" data-md-scrollfix>
|
<ul class="md-nav__list" data-md-scrollfix>
|
||||||
|
|
||||||
|
|
@ -1748,6 +1750,15 @@
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#community" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
Community
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
|
|
@ -3133,6 +3144,15 @@
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="md-nav__item">
|
||||||
|
<a href="#community" class="md-nav__link">
|
||||||
|
<span class="md-ellipsis">
|
||||||
|
Community
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
|
|
@ -3154,10 +3174,10 @@
|
||||||
|
|
||||||
|
|
||||||
<h1 id="common-go-mistakes">Common Go Mistakes</h1>
|
<h1 id="common-go-mistakes">Common Go Mistakes</h1>
|
||||||
<p>This page is a summary of all the mistakes in the 100 Go Mistakes book. Meanwhile, it's also a page open to the community. If you believe that a mistake should be added, please create a <a href="https://github.com/teivah/100-go-mistakes/issues/new?assignees=&labels=community+mistake&template=community_mistake.md&title=">community mistake issue</a>.</p>
|
<p>This page is a summary of the mistakes in the <a href="book/">100 Go Mistakes and How to Avoid Them book</a>. Meanwhile, it's also open to the community. If you believe that a common Go mistake should be added, please create an <a href="https://github.com/teivah/100-go-mistakes/issues/new?assignees=&labels=community+mistake&template=community_mistake.md&title=">issue</a>.</p>
|
||||||
<details class="warning" open="open">
|
<details class="warning" open="open">
|
||||||
<summary>Warning</summary>
|
<summary>Warning</summary>
|
||||||
<p>You're currently viewing a new version that I'm enriching with significantly more content. Yet, this version is still under development; please be gentle if you find an issue, and feel free to create a PR.</p>
|
<p>You're viewing a new version enriched with significantly more content. However, this version is not yet complete, and we're looking for volunteers to summarize the remaining mistakes (<a href="https://github.com/teivah/100-go-mistakes/issues/43">GitHub issue #43</a>).</p>
|
||||||
</details>
|
</details>
|
||||||
<p><a class="glightbox" href="img/inside-cover.png" data-type="image" data-width="auto" data-height="auto" data-desc-position="bottom"><img alt="" src="img/inside-cover.png" /></a></p>
|
<p><a class="glightbox" href="img/inside-cover.png" data-type="image" data-width="auto" data-height="auto" data-desc-position="bottom"><img alt="" src="img/inside-cover.png" /></a></p>
|
||||||
<h2 id="code-and-project-organization">Code and Project Organization</h2>
|
<h2 id="code-and-project-organization">Code and Project Organization</h2>
|
||||||
|
|
@ -3328,10 +3348,10 @@ promoted to <code>Foo</code>. Therefore, Baz becomes available from Foo.</p>
|
||||||
</span><span id="__span-5-14"><a id="__codelineno-5-14" name="__codelineno-5-14" href="#__codelineno-5-14"></a><span class="w"> </span><span class="p">}</span>
|
</span><span id="__span-5-14"><a id="__codelineno-5-14" name="__codelineno-5-14" href="#__codelineno-5-14"></a><span class="w"> </span><span class="p">}</span>
|
||||||
</span><span id="__span-5-15"><a id="__codelineno-5-15" name="__codelineno-5-15" href="#__codelineno-5-15"></a><span class="p">}</span>
|
</span><span id="__span-5-15"><a id="__codelineno-5-15" name="__codelineno-5-15" href="#__codelineno-5-15"></a><span class="p">}</span>
|
||||||
</span><span id="__span-5-16"><a id="__codelineno-5-16" name="__codelineno-5-16" href="#__codelineno-5-16"></a>
|
</span><span id="__span-5-16"><a id="__codelineno-5-16" name="__codelineno-5-16" href="#__codelineno-5-16"></a>
|
||||||
</span><span id="__span-5-17"><a id="__codelineno-5-17" name="__codelineno-5-17" href="#__codelineno-5-17"></a><span class="kd">func</span><span class="w"> </span><span class="nx">NewServer</span><span class="p">(</span><span class="nx">addr</span><span class="w"> </span><span class="kt">string</span><span class="p">,</span><span class="w"> </span><span class="nx">opts</span><span class="w"> </span><span class="o">...</span><span class="nx">Option</span><span class="p">)</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="o">*</span><span class="nx">http</span><span class="p">.</span><span class="nx">Server</span><span class="p">,</span><span class="w"> </span><span class="kt">error</span><span class="p">)</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="p"><</span><span class="mi">1</span><span class="p">></span>
|
</span><span id="__span-5-17"><a id="__codelineno-5-17" name="__codelineno-5-17" href="#__codelineno-5-17"></a><span class="kd">func</span><span class="w"> </span><span class="nx">NewServer</span><span class="p">(</span><span class="nx">addr</span><span class="w"> </span><span class="kt">string</span><span class="p">,</span><span class="w"> </span><span class="nx">opts</span><span class="w"> </span><span class="o">...</span><span class="nx">Option</span><span class="p">)</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="o">*</span><span class="nx">http</span><span class="p">.</span><span class="nx">Server</span><span class="p">,</span><span class="w"> </span><span class="kt">error</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||||
</span><span id="__span-5-18"><a id="__codelineno-5-18" name="__codelineno-5-18" href="#__codelineno-5-18"></a><span class="w"> </span><span class="kd">var</span><span class="w"> </span><span class="nx">options</span><span class="w"> </span><span class="nx">options</span><span class="w"> </span><span class="p"><</span><span class="mi">2</span><span class="p">></span>
|
</span><span id="__span-5-18"><a id="__codelineno-5-18" name="__codelineno-5-18" href="#__codelineno-5-18"></a><span class="w"> </span><span class="kd">var</span><span class="w"> </span><span class="nx">options</span><span class="w"> </span><span class="nx">options</span>
|
||||||
</span><span id="__span-5-19"><a id="__codelineno-5-19" name="__codelineno-5-19" href="#__codelineno-5-19"></a><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="nx">_</span><span class="p">,</span><span class="w"> </span><span class="nx">opt</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="k">range</span><span class="w"> </span><span class="nx">opts</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="p"><</span><span class="mi">3</span><span class="p">></span>
|
</span><span id="__span-5-19"><a id="__codelineno-5-19" name="__codelineno-5-19" href="#__codelineno-5-19"></a><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="nx">_</span><span class="p">,</span><span class="w"> </span><span class="nx">opt</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="k">range</span><span class="w"> </span><span class="nx">opts</span><span class="w"> </span><span class="p">{</span>
|
||||||
</span><span id="__span-5-20"><a id="__codelineno-5-20" name="__codelineno-5-20" href="#__codelineno-5-20"></a><span class="w"> </span><span class="nx">err</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="nx">opt</span><span class="p">(</span><span class="o">&</span><span class="nx">options</span><span class="p">)</span><span class="w"> </span><span class="p"><</span><span class="mi">4</span><span class="p">></span>
|
</span><span id="__span-5-20"><a id="__codelineno-5-20" name="__codelineno-5-20" href="#__codelineno-5-20"></a><span class="w"> </span><span class="nx">err</span><span class="w"> </span><span class="o">:=</span><span class="w"> </span><span class="nx">opt</span><span class="p">(</span><span class="o">&</span><span class="nx">options</span><span class="p">)</span>
|
||||||
</span><span id="__span-5-21"><a id="__codelineno-5-21" name="__codelineno-5-21" href="#__codelineno-5-21"></a><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="nx">err</span><span class="w"> </span><span class="o">!=</span><span class="w"> </span><span class="kc">nil</span><span class="w"> </span><span class="p">{</span>
|
</span><span id="__span-5-21"><a id="__codelineno-5-21" name="__codelineno-5-21" href="#__codelineno-5-21"></a><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="nx">err</span><span class="w"> </span><span class="o">!=</span><span class="w"> </span><span class="kc">nil</span><span class="w"> </span><span class="p">{</span>
|
||||||
</span><span id="__span-5-22"><a id="__codelineno-5-22" name="__codelineno-5-22" href="#__codelineno-5-22"></a><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="kc">nil</span><span class="p">,</span><span class="w"> </span><span class="nx">err</span>
|
</span><span id="__span-5-22"><a id="__codelineno-5-22" name="__codelineno-5-22" href="#__codelineno-5-22"></a><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="kc">nil</span><span class="p">,</span><span class="w"> </span><span class="nx">err</span>
|
||||||
</span><span id="__span-5-23"><a id="__codelineno-5-23" name="__codelineno-5-23" href="#__codelineno-5-23"></a><span class="w"> </span><span class="p">}</span>
|
</span><span id="__span-5-23"><a id="__codelineno-5-23" name="__codelineno-5-23" href="#__codelineno-5-23"></a><span class="w"> </span><span class="p">}</span>
|
||||||
|
|
@ -4761,6 +4781,11 @@ the use case. However, we should see the two options as complementary. </p>
|
||||||
<summary>TL;DR</summary>
|
<summary>TL;DR</summary>
|
||||||
<p>To help avoid CPU throttling when deployed in Docker and Kubernetes, keep in mind that Go isn’t CFS-aware.</p>
|
<p>To help avoid CPU throttling when deployed in Docker and Kubernetes, keep in mind that Go isn’t CFS-aware.</p>
|
||||||
</details>
|
</details>
|
||||||
|
<h2 id="community">Community</h2>
|
||||||
|
<p>Thanks to all the contributors:</p>
|
||||||
|
<p><a href="https://contrib.rocks/image?repo=teivah/100-go-mistakes">
|
||||||
|
<a class="glightbox" href="https://contrib.rocks/image?repo=teivah/100-go-mistakes" data-type="image" data-width="auto" data-height="auto" data-desc-position="bottom"><img src="https://contrib.rocks/image?repo=teivah/100-go-mistakes" alt="Description of the image"></a>
|
||||||
|
</a></p>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,9 @@
|
||||||
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
||||||
|
|
||||||
|
|
||||||
<title>100 Go Mistakes</title>
|
|
||||||
|
<title>Japanese Version - 100 Go Mistakes and How to Avoid Them</title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
||||||
|
|
@ -313,7 +315,7 @@
|
||||||
<a href=".." class="md-tabs__link">
|
<a href=".." class="md-tabs__link">
|
||||||
|
|
||||||
|
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
@ -511,7 +513,7 @@
|
||||||
|
|
||||||
|
|
||||||
<span class="md-ellipsis">
|
<span class="md-ellipsis">
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -521,7 +523,7 @@
|
||||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
|
||||||
<label class="md-nav__title" for="__nav_2">
|
<label class="md-nav__title" for="__nav_2">
|
||||||
<span class="md-nav__icon md-icon"></span>
|
<span class="md-nav__icon md-icon"></span>
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</label>
|
</label>
|
||||||
<ul class="md-nav__list" data-md-scrollfix>
|
<ul class="md-nav__list" data-md-scrollfix>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,9 @@
|
||||||
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
||||||
|
|
||||||
|
|
||||||
<title>100 Go Mistakes</title>
|
|
||||||
|
<title>Go Jobs - 100 Go Mistakes and How to Avoid Them</title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
||||||
|
|
@ -313,7 +315,7 @@
|
||||||
<a href=".." class="md-tabs__link">
|
<a href=".." class="md-tabs__link">
|
||||||
|
|
||||||
|
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
@ -513,7 +515,7 @@
|
||||||
|
|
||||||
|
|
||||||
<span class="md-ellipsis">
|
<span class="md-ellipsis">
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -523,7 +525,7 @@
|
||||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
|
||||||
<label class="md-nav__title" for="__nav_2">
|
<label class="md-nav__title" for="__nav_2">
|
||||||
<span class="md-nav__icon md-icon"></span>
|
<span class="md-nav__icon md-icon"></span>
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</label>
|
</label>
|
||||||
<ul class="md-nav__list" data-md-scrollfix>
|
<ul class="md-nav__list" data-md-scrollfix>
|
||||||
|
|
||||||
|
|
|
||||||
File diff suppressed because one or more lines are too long
|
|
@ -2,67 +2,67 @@
|
||||||
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
||||||
<url>
|
<url>
|
||||||
<loc>https://100go.co/</loc>
|
<loc>https://100go.co/</loc>
|
||||||
<lastmod>2024-02-28</lastmod>
|
<lastmod>2024-03-05</lastmod>
|
||||||
<changefreq>daily</changefreq>
|
<changefreq>daily</changefreq>
|
||||||
</url>
|
</url>
|
||||||
<url>
|
<url>
|
||||||
<loc>https://100go.co/20-slice/</loc>
|
<loc>https://100go.co/20-slice/</loc>
|
||||||
<lastmod>2024-02-28</lastmod>
|
<lastmod>2024-03-05</lastmod>
|
||||||
<changefreq>daily</changefreq>
|
<changefreq>daily</changefreq>
|
||||||
</url>
|
</url>
|
||||||
<url>
|
<url>
|
||||||
<loc>https://100go.co/28-maps-memory-leaks/</loc>
|
<loc>https://100go.co/28-maps-memory-leaks/</loc>
|
||||||
<lastmod>2024-02-28</lastmod>
|
<lastmod>2024-03-05</lastmod>
|
||||||
<changefreq>daily</changefreq>
|
<changefreq>daily</changefreq>
|
||||||
</url>
|
</url>
|
||||||
<url>
|
<url>
|
||||||
<loc>https://100go.co/56-concurrency-faster/</loc>
|
<loc>https://100go.co/56-concurrency-faster/</loc>
|
||||||
<lastmod>2024-02-28</lastmod>
|
<lastmod>2024-03-05</lastmod>
|
||||||
<changefreq>daily</changefreq>
|
<changefreq>daily</changefreq>
|
||||||
</url>
|
</url>
|
||||||
<url>
|
<url>
|
||||||
<loc>https://100go.co/89-benchmarks/</loc>
|
<loc>https://100go.co/89-benchmarks/</loc>
|
||||||
<lastmod>2024-02-28</lastmod>
|
<lastmod>2024-03-05</lastmod>
|
||||||
<changefreq>daily</changefreq>
|
<changefreq>daily</changefreq>
|
||||||
</url>
|
</url>
|
||||||
<url>
|
<url>
|
||||||
<loc>https://100go.co/9-generics/</loc>
|
<loc>https://100go.co/9-generics/</loc>
|
||||||
<lastmod>2024-02-28</lastmod>
|
<lastmod>2024-03-05</lastmod>
|
||||||
<changefreq>daily</changefreq>
|
<changefreq>daily</changefreq>
|
||||||
</url>
|
</url>
|
||||||
<url>
|
<url>
|
||||||
<loc>https://100go.co/98-profiling-execution-tracing/</loc>
|
<loc>https://100go.co/98-profiling-execution-tracing/</loc>
|
||||||
<lastmod>2024-02-28</lastmod>
|
<lastmod>2024-03-05</lastmod>
|
||||||
<changefreq>daily</changefreq>
|
<changefreq>daily</changefreq>
|
||||||
</url>
|
</url>
|
||||||
<url>
|
<url>
|
||||||
<loc>https://100go.co/book/</loc>
|
<loc>https://100go.co/book/</loc>
|
||||||
<lastmod>2024-02-28</lastmod>
|
<lastmod>2024-03-05</lastmod>
|
||||||
<changefreq>daily</changefreq>
|
<changefreq>daily</changefreq>
|
||||||
</url>
|
</url>
|
||||||
<url>
|
<url>
|
||||||
<loc>https://100go.co/chapter-1/</loc>
|
<loc>https://100go.co/chapter-1/</loc>
|
||||||
<lastmod>2024-02-28</lastmod>
|
<lastmod>2024-03-05</lastmod>
|
||||||
<changefreq>daily</changefreq>
|
<changefreq>daily</changefreq>
|
||||||
</url>
|
</url>
|
||||||
<url>
|
<url>
|
||||||
<loc>https://100go.co/external/</loc>
|
<loc>https://100go.co/external/</loc>
|
||||||
<lastmod>2024-02-28</lastmod>
|
<lastmod>2024-03-05</lastmod>
|
||||||
<changefreq>daily</changefreq>
|
<changefreq>daily</changefreq>
|
||||||
</url>
|
</url>
|
||||||
<url>
|
<url>
|
||||||
<loc>https://100go.co/ja/</loc>
|
<loc>https://100go.co/ja/</loc>
|
||||||
<lastmod>2024-02-28</lastmod>
|
<lastmod>2024-03-05</lastmod>
|
||||||
<changefreq>daily</changefreq>
|
<changefreq>daily</changefreq>
|
||||||
</url>
|
</url>
|
||||||
<url>
|
<url>
|
||||||
<loc>https://100go.co/jobs/</loc>
|
<loc>https://100go.co/jobs/</loc>
|
||||||
<lastmod>2024-02-28</lastmod>
|
<lastmod>2024-03-05</lastmod>
|
||||||
<changefreq>daily</changefreq>
|
<changefreq>daily</changefreq>
|
||||||
</url>
|
</url>
|
||||||
<url>
|
<url>
|
||||||
<loc>https://100go.co/zh/</loc>
|
<loc>https://100go.co/zh/</loc>
|
||||||
<lastmod>2024-02-28</lastmod>
|
<lastmod>2024-03-05</lastmod>
|
||||||
<changefreq>daily</changefreq>
|
<changefreq>daily</changefreq>
|
||||||
</url>
|
</url>
|
||||||
</urlset>
|
</urlset>
|
||||||
Binary file not shown.
|
|
@ -17,7 +17,9 @@
|
||||||
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.11">
|
||||||
|
|
||||||
|
|
||||||
<title>100 Go Mistakes</title>
|
|
||||||
|
<title>Chinese (Simplified) Version - 100 Go Mistakes and How to Avoid Them</title>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
<link rel="stylesheet" href="../assets/stylesheets/main.7e359304.min.css">
|
||||||
|
|
@ -313,7 +315,7 @@
|
||||||
<a href=".." class="md-tabs__link">
|
<a href=".." class="md-tabs__link">
|
||||||
|
|
||||||
|
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
@ -511,7 +513,7 @@
|
||||||
|
|
||||||
|
|
||||||
<span class="md-ellipsis">
|
<span class="md-ellipsis">
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -521,7 +523,7 @@
|
||||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
|
||||||
<label class="md-nav__title" for="__nav_2">
|
<label class="md-nav__title" for="__nav_2">
|
||||||
<span class="md-nav__icon md-icon"></span>
|
<span class="md-nav__icon md-icon"></span>
|
||||||
⭐ Go Mistakes
|
💡️ Go Mistakes
|
||||||
</label>
|
</label>
|
||||||
<ul class="md-nav__list" data-md-scrollfix>
|
<ul class="md-nav__list" data-md-scrollfix>
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue