Go语言101

《Go语言101》是一本着墨于Go语法和语义的编程指导书(Go 1.13就绪)。这本书也搜集了很多Go编程中的的细节和讲解了一些底层实现原理(不含具体实现细节)。这本书的宗旨是尽量帮助Go程序员更深和更全面地理解Go。此书同时适合Go初学者和有一定经验的Go程序员阅读。

  • 本书由老貘编写。
  • English version is here.
  • 此项目源代码同时托管在GitlabGithub上。你可以将代码拉取到本地并在项目目录下运行go run .命令来启动一个本地服务器来阅读本书以获取更好的阅读体验。

赞赏

2019/10/31:

  • 改正了“删除子切片”例子代码中的一个错误
  • 更正了“延迟调用的函数值的估值时刻”的解释
  • "在正确的位置调用内置recover函数"一文改名为“详解panic/recover原理”。

2019/10/18: “表达式估值顺序规则”一文中对赋值语句中的表达式估值和赋值执行顺序的解释有不恰当之处。目前采用了一个新的更简单的描述来解释。

2019/09/30: 在“非类型安全指针”一文中添加了一个事实并指出本书在使用模式三:将一个非类型安全指针转换为一个uintptr值,然后此uintptr值参与各种算术运算,再将算术运算的结果uintptr值转回非类型安全指针一节中犯了一个严重的错误(我决定撤回此勘误。) 目录:

Go语言101项目目前同时托管在GithubGitlab上。欢迎各位在这两个项目中通过提交bug和PR的方式来改进完善Go语言101中的各篇文章。

本书微信公众号名称为"Go 101"。每个工作日此公众号将尽量发表一篇和Go语言相关的原创短文。各位如果感兴趣,可以搜索关注一下。