这是关于来自Google 的Go 语言的简介。目标是为这个新的、革命性的语言提供一个指南。
什么是Go?来自于网站:
Go 编程语言是一个使得程序员更加有效率的开源项目。Go 是有表达力、简洁、清晰和有效率的。它的并行机制使其很容易编写多核和网络应用,而新奇的类型系统允许构建有弹性的模块化程序。Go 编译到机器码非常快速,同时具有便利的垃圾回收和强大的运行时反射。它是快速的、静态类型编译语言,但是感觉上是动态类型的,解释型语言。
这本书的目标读者是那些熟悉编程,并且了解多种编程语言,例如C,C++,Perl,Java,Erlang,Scala,Haskell。这不是教你如何编程的书,只是教你如何使用Go。
本书代码托管于 github。
英文版由 Miek Gieben 维护。。
用 git 克隆项目:
git clone git://github.com/mikespook/Learning-Go-zh-cn.git
然后根据 README.md 中的内容安装所需依赖包,编译即可得到 pdf。
编译好的成品这里下载:《学习Go语言》中文版(20131116)
- 【20130723】同步到英文版 2013-11-16。
- 【20130723】同步到英文版 2013-06-12。
- 【20120730】同步到英文版 2012-07-27。修改CJK方式。
- 【20120608】改进了第三章的细节格式,对一些中文表达进行了调整。
- 【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】发布第一章、第二章内容供试读。
鉴于我个人精力有限,建议有能力的同学通过 Pull requests 功能向这本书提交补丁,以便加快 issue 的修复。
谢谢大家!
怎么生成PDF呢?
从GR上跳过来,看了文档才知道原来是中大的师兄~Perfect work! 谢谢您的工作~
好东西啊,非常感谢!
好东西啊,谢谢无私奉献
非常感谢!
非常感谢作者的贡献,这是我下载第2个版本来看了.
如果能把白边弄窄点就好了,在iPad上看时文字小了点。
已经开始阅读了,呵呵!等要出版的时候告诉我,我一定要买一本
写得很不错,确实是本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 代码回来自己编译。
P50 跟随气候
谢谢!已经修复。
想学习golang,正好看看
整理了下golang在windows下代码自动提示IDE
对于新手来说还是比较不错的。
http://blog.csdn.net/love_se/article/details/7754274
https://bitbucket.org/mikespook/learning_go_chinese/downloads/go.pdf.zip 这个地址无法下载
看起来是 bitbucket 的 CDN 受到 GFW 的封锁了……
网页上下载不了…..
用svn 提示403…
博主能不能把把它转移到别的地方。
真扯淡,电子书的网站也被墙了.这样的GJ盼望他早点完蛋!!
博主是否能关注下,为什么老是无法下载哦!!!谢谢博主
博主辛苦了!
不好意思,请问可以生成html版本共享出来吗?那样的话转换成epub/mobi格式就可以在手机上看了。我有kindle,但只有手机是随身携带的。希望可以在手机上随时学习。^_^
中文版第19页中间:
array、slice 和map 的复合声明变得更加简单。使用复合声明的array、slice
和map,元素复合声明的类型与外部一直 —> 一致
48页中间:
名称以大写字幕 —>字母
51页中间
并且相关的细节会跟随气候 —>其后
已改,谢谢!
pdf如何翻墙呀。哥们帮忙下!!!
我在微盘也放了一份。
真的需要翻墙才能看这么好的书.MGBD.还代表先进生产力的方向呢,扯淡吧
赞!收录!
赞一个。
又更新了,啥时候出个个完美版,准备打印下,哈哈。谢谢博主的劳动。
謝了!
多谢:)
非常感谢~
赞,博主的开源精神值得学习
非常感谢
谢谢楼主的付出。
提点意见或建议:
1 有些表述是英文直译,语感生涩。
2 有些手误,比如个别地方对应的英文句子没删干净。
3 UTF8的code point不该译为“编码的指针”吧,类似“编码点”的翻译更好。
4 A19中的os.Open应为os.OpenFile,e.String()应为e.Error()。
谢谢,由于精力原因,review 做得比较粗糙,错误不少。还有一些遗漏的 Go 自身变更的错误。抽空改进。
竟然有kindle版本 不错多谢
真的非常感谢!
谢谢楼主!
做的十分好,go语言作为一门新鲜的语言潜力巨大,能有这样的书籍引进门,真可谓喜事啊!感谢您的精彩工作!
哈,为了LZ的这本书,专门买了个Kindle PaperWhite,弄了半天,PDF的效果都不是很好,结果今天又转回这里,发现居然有Kindle版的,欣喜若狂。。。
感谢!!!
支持博主,这方面的资料确实不多,博主费心了。
感谢作者,特别感谢译者。
如果能像《build web application with golang 》一样用makedown直接在github上阅读就好了。pdf在很多场合下看的不是很舒服。我第一次使用github阅读,就是前面说的这本书,一周就看完了,从来没有想过自己看书效率这么高。
甚至,如果作者不提供makedown版本,我都想自己把《学习Go语言》转成makedown书写了。
书下载不了,微盘的也不行,求下载地址,或者邮件我,万分感谢
新浪修改了微盘的分享方式,我已经修改了最新的下载地址。
太感谢啦!赞一个!
谢谢你的电子书!
求微博 求关注楼主
看了几天,非常明了!让我这个新手马上能试验起来了。
只是一些语法似乎没把各种可能的情况以及不合法的情况都写出来,如:if还可以【if 语句1;条件 {】而【if 语句1;语句2;条件 {】则报错。
另外,defer的效果,好像也是非常复杂:
defer语句和defer匿名函数、操作的变量类型(全函数有效、返回值、for有效)与修改方式(函数里修改、defer匿名函数里修改)导致的影响完全不同!如:http://bbs.csdn.net/topics/390571159 的7#。
另外,高效的类型转换,如c的itoa,go似乎没有?只能通过Sprint?
日期时间转字符串,输出格式好像也没精确的指示?delphi是【yyyy-mm-dd hh:nn:ss.zzz】可以任意组合这7种元素,非常方便。
Thanks !
没有编译好的,只能自己编译了。编译好的我放到我的微盘上了:http://vdisk.weibo.com/s/z-h6cvwYjW-WC ,有需要的可以去直接下载了。
感谢工作·
lz啊,怎么下载下来是英文的,我下载代码编译了还是英文?
study go
我的失误。上次 merge 的时候没有正确处理,导致英文版覆盖了中文翻译。已经修复了。
什么时候有1.2的呢
感谢博主的翻译,很精确,很到位,
排版也很优美,犹如纸质书一般
非常感谢!
博主能不能抽空帮我也编译下这本书go语言的书,谢谢
https://github.com/astaxie/build-web-application-with-golang/blob/master/ebook/preface.md
唉哟,,,不错哦
博主要是有时间能更新一下1.3新更改的内容就更好了.[上条评论邮箱错了囧]
赞一个,可否转载?
我在获取
go get github.com/mikespook/goemphp/php
时 ,报了下面错,请问什么原因导致的
9:11: fatal error: ‘zend.h’ file not found
#include “zend.h”
^
1 error generated.
你好,请问你在github 上的 tex 文件代码包 如何在windown + ctex 这个环境下编译呀?我没有找到入口。
(我用的是windows 下的 CTEX,)
抱歉,我自己没有 windows 的环境,不是很清楚有什么依赖的包。不过按照 Ubuntu 下的 tex 依赖的包安装完整,应该是不会有问题的。
谢谢你的译本, 看了一半了
font size is too small. any way to make the fontsize bigger?
thanks,
感谢你的译本,基本掌握了Go语言的编程,不知可否介绍一些开源的项目,以便进一步学习,非常感谢!
这里要请教作者一个事情了,本书的原著应该是由Miek Gieben制作的吧?(从git提交历史也能明显的看出来,同时您给的原著链接已失效,正文请看:https://miek.nl/go/)
而作者您本人应该更多是做了英文翻译的工作,但感觉作者博文及书中并未明确说明,给人的感觉反而是英文版是从您这翻译过去的(原话:“英文版由 Miek Gieben 维护。。”),而且pdf中竟未给出原作者的链接(反而是列举了一个俄文的作者。。。)。
所以我在此求证一下,请作者本人给原作一个明确的说明和链接。
Miek 撰写了英文版,然后大家翻译了各个语言的版本。然后分别维护。抱歉,中文版我已经放弃维护了。早期国内没有人写 Go 相关的东西,那时候还很有必要。现在阿猫阿狗都在著书立传我维护也没有什么实际意义。PDF 的版本是沿用了 Miek 的模板,所以有什么没有什么各个版本都差不多。你要是有疑问,可以写信给 Miek 直接问他。我们断断续续有些书信来往,涉及私人信息,不能公开给你。BUT (everything has the BIG BUT),你要是纯粹找茬,那抱歉了,滚粗不送,哈哈哈~~
我git clone下載了。放到CentOS中下了make,顯示缺少xelatex,然後查google下了yum install texlive-xetex指令安裝後,再下make,顯示缺少xelatex.fmt,看來不行。請問該怎麼做才能產生pdf檔?
To gopher:基本上對人著作有質疑,不能說是不對。但是在沒有證據之前,也許對方是善意的。要求證,是不是態度也應該好一點?像你po文內容,明顯充滿惡意(雖然你本人認不是,但旁人怎麼看都覺得是)。做人要留點餘地!雖然我來自台灣,但我想做人態度的教育,放諸四海皆同吧。作者願意翻譯成中文,這點是不是應該先表示謝意,再來做質疑?你爸媽沒教你這個嗎?(不好意思!惡人者人恆惡之)>”<
我剛剛才看到你有給中文pdf的下載連結,謝囉!
读读你之前的质疑,你的话送你自己的确很合适。不过呢,要体现 critical thinking 大可不必在我这小庙里瞎折腾。另外,虽然你必费心强调,但是你来自哪里我确实不太关心。只是,不论是台湾还是大陆,都已经不流行文字狱了,抓着一两个词吹毛求疵,会跟不上时代的。吹吹灰,不送啦。Life is short~ LOL
感谢 🙂