这是做什么的?
这是 Uber Go 风格指南——一份公开文档,介绍 Uber 编写 Go 代码时遵循的模式和规范。
所以它只是一份文档,不是能安装的库或工具?
没错——没有什么需要安装或运行的东西。它是一份书面指南,供你在写 Go 代码时阅读和应用;这个仓库本身也就是指南文本,外加一个用于维护它的 Makefile 和 CI 工作流。
我要怎么阅读它?
完全不需要任何准备:README 里直接链接了这份指南——在浏览器里打开就能开始读。
它是官方的 Go 风格指南,还是 Uber 自己的内部规范?
它是 Uber 的内部风格规范,不是 Go 官方团队的标准——它反映的是对 Uber 代码库行之有效的做法,所以其他团队根据自己的情况做出调整或偏离也是合理的。
它只写给 Uber 的工程师看吗?
不是——它以 Apache-2.0 协议公开发布,面向所有写 Go 的人;目前已有十七个社区翻译版本,正是因为 Uber 之外的开发者也在依赖它。
用它对我的操作系统或环境有要求吗?
完全没有——它是一份网页文档,任何浏览器都能看;你的电脑上不用运行任何东西。
这份指南有哪些语言版本可以看?
目前链接了十七个社区翻译版本:中文(简体和繁体)、韩语、日语、西班牙语、泰语、葡萄牙语和巴西葡萄牙语、波兰语、俄语、法语、土耳其语、乌克兰语、波斯语、越南语、阿拉伯语和印尼语——每个版本都放在各自的仓库里。
这份指南是 Uber 自己写的,还是社区驱动的?
指南本身由 Uber 在这个仓库里维护;社区负责的是翻译——到目前为止已有十七个,各自单独托管,并通过 PR 的方式添加进来。
What are similar projects?
laravel-best-practices, ruby-style-guide, awesome-guidelines, python-guide, project-layout, styleguide, clean-code-php, HowToBeAProgrammer
Which topics is it in?
clean-code, handbook, standards, makefile, style-guide, software-engineering, code-quality, best-practices, programming, multilingual, golang, reference