《学习Go语言》中文版
这是关于来自Google 的Go 语言的简介。目标是为这个新的、革命性的语言提供一个指南。
什么是Go?来自于网站:
Go 编程语言是一个使得程序员更加有效率的开源项目。Go 是有表达力、简洁、清晰和有效率的。它的并行机制使其很容易编写多核和网络应用,而新奇的类型系统允许构建有弹性的模块化程序。Go 编译到机器码非常快速,同时具有便利的垃圾回收和强大的运行时反射。它是快速的、静态类型编译语言,但是感觉上是动态类型的,解释型语言。
这本书的目标读者是那些熟悉编程,并且了解多种编程语言,例如C,C++,Perl,Java,Erlang,Scala,Haskell。这不是教你如何编程的书,只是教你如何使用Go。
本书代码托管于此:https://bitbucket.org/mikespook/learning_go_chinese。
英文原版由 Miek Gieben 维护:http://miek.nl/cgi-bin/gitweb.cgi?p=gobook.git;a=summary。
用 hg 克隆项目:
hg clone https://bitbucket.org/mikespook/learning_go_chinese
然后根据 README.md 中的内容安装所需依赖包,编译即可得到 pdf。
编译好的成品这里下载:
- A4 标准尺寸:《学习Go语言》中文版(20120428)
- 6 寸屏幕(Kindle like):《学习Go语言》中文版(20120210)
- 【20120428】改进了前言、第一章、第二章的细节格式,修复了一些错误。
- 【20120409】同步到英文版 2012-04-09,标记为 1.0 版本。
- 【20120210】同步到英文版 2012-02-08,更新了 Go-1 的工具变化。
- 【20120110】更新部分 Go-1 的内容。
- 【20111110】发布0.4版,同步到英文的 2011-10-25,增补 Windows 部分安装。
- 【20110914】发布0.4版 6 寸屏幕版本(for Kindle)供试读。
- 【20110904】发布0.4版供试读。
- 【20110607】发布完整翻译内容供试读。
- 【20110603】发布第一章至第七章内容供试读。
- 【20110527】发布第一章至第六章内容供试读。
- 【20110501】发布第一章至第五章内容供试读。
- 【20110418】发布第一章至第四章内容供试读。
- 【20110413】发布第一章、第二章内容供试读。
鉴于我个人精力有限,建议有能力的同学通过 bitbucket 的 Pull requests 功能向这本书提交补丁,以便加快 issue 的修复。
谢谢大家!
[...] 《学习Go语言》中文版 [...]
[...] 项目页面在这里:《学习Go 语言》 [...]
怎么生成PDF呢?
从GR上跳过来,看了文档才知道原来是中大的师兄~Perfect work! 谢谢您的工作~
[...] 《学习Go语言》中文版 [...]
好东西啊,非常感谢!
[...] 《学习Go语言》中文版 [...]
好东西啊,谢谢无私奉献
非常感谢!
非常感谢作者的贡献,这是我下载第2个版本来看了.
如果能把白边弄窄点就好了,在iPad上看时文字小了点。
已经开始阅读了,呵呵!等要出版的时候告诉我,我一定要买一本
写得很不错,确实是本GO入门的好书,感谢了
非常感谢作者的贡献,求交友
非常感谢作者的翻译
[...] 《学习Go语言》中文 [...]
谢谢作者!伟大的中文GO先驱!
[...] 书籍: 原文网址 《学习Go语言》中文 [...]
在第12页有一个错别字:夸
Go 是第一个实现了简单的(或更加简单的)并行开发的、夸平台类C 语言。
谢谢,周末外出,回来了更正它。
这本书的第20页谈到slice的len和cap的时候有个错误。当数组array的类型是[m]int,而slice=array[0:n]时,cap(slice)应该等于m,而不是n。原书中都弄成cap(slice)=n了。
谢谢,已经更正,并向原文提交了补丁。
已经持续跟进翻译到了Go1,真正不容易,在下载阅读的同时,说声感谢~~~
包的文档模块,func Printf(format string, a …interface) (n int, err error),接口类型应该是interface{}
进阶/定义自己的类型
应该用逗号分割
进阶/转换
从string到字节或者整形的slice。
mystring := “hello this is string”
byteslice := []byte(mystring)
转换到byteslice,每个byte保存字符串对应字节的整数值。注意Go的字符串是UTF-8编码的,一些字符可能是1、2、3或者4个字节结尾。
intslice := []int(mystring)
string类型强转[]int编译不通过
有没有好的IDE啊?
通讯/网络
http包导入有误
应该是:
import(
“net/http”
)
谢谢!第一个和第二个已经修复,不过还没发布编译版。其他也已经在代码里修复了。并且向原版提交了补丁。
看到Go1了,伟大的翻译。
麻烦请顺便把kindle版也更新一下,多谢辛苦劳动!
对着电脑看太累了,还是在kindle上看舒服
kindle 的排版一直都没有维护,很多格式会有问题,所以就没有更新了。如果有条件,可以 clone 代码回来自己编译。