Commit Graph
100 Commits
Author SHA1 Message Date
XarginandGitHub e49d682204 Merge pull request #66 from chai2010/master
update readme
2018-08-14 10:16:47 +08:00
XarginandGitHub 50e3a3b2ea Merge pull request #65 from chai2010/master
update preface
2018-08-07 23:13:18 +08:00
XarginandGitHub 57624beae8 Merge pull request #64 from chai2010/master
update readme
2018-08-07 16:15:35 +08:00
Xargin 3427079cea Merge branch 'master' of github.com:gopl-zh/gopl-zh.github.com 2018-07-02 17:08:03 +08:00
Xargin e6b065a81f fix typo
diff --git a/ch7/ch7-07.md b/ch7/ch7-07.md
index 6d8b209..74c29cb 100644
--- a/ch7/ch7-07.md
+++ b/ch7/ch7-07.md
@@ -112,7 +112,7 @@ no such page: /help

 对于更复杂的应用,一些ServeMux可以通过组合来处理更加错综复杂的路由需求。Go语言目前没有一个权威的web框架,就像Ruby语言有Rails和python有Django。这并不是说这样的框架不存在,而是Go语言标准库中的构建模块就已经非常灵活以至于这些框架都是不必要的。此外,尽管在一个项目早期使用框架是非常方便的,但是它们带来额外的复杂度会使长期的维护更加困难。

-在下面的程序中,我们创建一个ServeMux并且使用它将URL和相应处理/list和/price操作的handler联系起来,这些操作逻辑都已经被分到不同的方法中。然后我门在调用ListenAndServe函数中使用ServeMux为主要的handler。
+在下面的程序中,我们创建一个ServeMux并且使用它将URL和相应处理/list和/price操作的handler联系起来,这些操作逻辑都已经被分到不同的方法中。然后我们在调用ListenAndServe函数中使用ServeMux为主要的handler。

 <u><i>gopl.io/ch7/http3</i></u>
 ```go
2018-07-02 17:07:49 +08:00
XarginandGitHub f32e613610 Merge pull request #63 from CloudnuY/master
Fix error
2018-06-13 16:35:00 +08:00
XarginandGitHub 77bd7ceabe Merge pull request #62 from kimw/punctuation
修正半角标点符号
2018-06-10 13:00:56 +08:00
XarginandGitHub a81bfabcdc Merge pull request #60 from howudoing/master
Update ch5-08.md
2018-05-30 12:52:15 +08:00
XarginandGitHub ff0cd173e3 Merge pull request #59 from kimw/punctuation
修正半角标点符号
2018-05-28 16:27:10 +08:00
XarginandGitHub fb3359fb4e Merge pull request #58 from fuwensun/master
一些修改
2018-05-27 18:25:41 +08:00
XarginandGitHub fc1ccb23bf Merge pull request #57 from sleagon/master
Add preview host(most of  hosts are broken)
2018-05-18 18:27:30 +08:00
Xargin 686f88c60e fix typo
diff --git a/ch1/ch1-03.md b/ch1/ch1-03.md
index 2861424..866573f 100644
--- a/ch1/ch1-03.md
+++ b/ch1/ch1-03.md
@@ -37,7 +37,7 @@ func main() {

 (译注:从功能和实现上说,`Go`的`map`类似于`Java`语言中的`HashMap`,Python语言中的`dict`,`Lua`语言中的`table`,通常使用`hash`实现。遗憾的是,对于该词的翻译并不统一,数学界术语为`映射`,而计算机界众说纷纭莫衷一是。为了防止对读者造成误解,保留不译。)

-每次`dup`读取一行输入,该行被当做`map`,其对应的值递增。`counts[input.Text()]++`语句等价下面两句:
+每次`dup`读取一行输入,该行被当做键存入`map`,其对应的值递增。`counts[input.Text()]++`语句等价下面两句:

 ```go
 line := input.Text()
2018-05-16 18:40:58 +08:00
XarginandGitHub f5a329e8cf Merge pull request #56 from CloudnuY/master
fix typo
2018-03-31 12:09:56 +08:00
Xargin 5ae8b7cdb3 fix typo 2018-03-21 17:37:17 +08:00
XarginandGitHub 8a8931b45b Merge pull request #55 from kangxiaoning/master
Fix a typo
2018-03-09 20:19:54 +08:00
XarginandGitHub 22f02bc3f1 Merge pull request #54 from kangxiaoning/master
修正zero value和signature翻译
2018-03-09 17:32:32 +08:00
XarginandGitHub 2e0bb31022 Merge pull request #53 from kangxiaoning/master
Fix a typo
2018-03-08 22:16:41 +08:00
XarginandGitHub d2ca195e6f Merge pull request #52 from sherylynn/master
更新gitbook版本,避免由node新版本而产生安装问题,并增加了windows下构建gitbook的批处理
2018-03-01 17:26:10 +08:00
Xargin 9eecd0f991 fix typo
diff --git a/ch2/ch2-07.md b/ch2/ch2-07.md
index f5e75f4..b74cfdd 100644
--- a/ch2/ch2-07.md
+++ b/ch2/ch2-07.md
@@ -12,7 +12,7 @@

 一个程序可能包含多个同名的声明,只要它们在不同的词法域就没有关系。例如,你可以声明一个局部变量,和包级的变量同名。或者是像2.3.3节的例子那样,你可以将一个函数参数的名字声明为new,虽然内置的new是全局作用域的。但是物极必反,如果滥用不同词法域可重名的特性的话,可能导致程序很难阅读。

-当编译器遇到一个名字引用时,如果它看起来像一个声明,它首先从最内层的词法域向全局的作用域查找。如果查找失败,则报告“未声明的名字”这样的错误。如果该名字在内部和外部的块分别声明过,则内部块的声明首先被找到。在这种情况下,内部声明屏蔽了外部同名的声明,让外部的声明的名字无法被访问:
+当编译器遇到一个名字引用时,它会对其定义进行查找,查找过程从最内层的词法域向全局的作用域进行。如果查找失败,则报告“未声明的名字”这样的错误。如果该名字在内部和外部的块分别声明过,则内部块的声明首先被找到。在这种情况下,内部声明屏蔽了外部同名的声明,让外部的声明的名字无法被访问:

 ```Go
 func f() {}
2018-02-23 15:49:02 +08:00
XarginandGitHub bc9c93eec7 Merge pull request #51 from iamybj/master
readme.md 和 preferd.md 预览网址保持一致
2018-02-23 14:00:04 +08:00
Xargin 9ac3956583 Merge branch 'master' of https://github.com/gopl-zh/gopl-zh.github.com 2018-01-17 17:45:45 +08:00
Xargin 72b9bfe173 fix 2018-01-17 17:45:27 +08:00
XarginandGitHub a5efe7a0dd Merge pull request #50 from wukoo/patch-3
Update ch5-04-1.md
2018-01-01 20:14:46 +08:00
XarginandGitHub d493b63b5e Merge pull request #45 from qinhanlei/patch-14
Update ch12-07.md
2017-12-15 15:31:18 +08:00
XarginandGitHub 3484a16c92 Merge pull request #46 from qinhanlei/patch-15
Update ch12-07.md
2017-12-15 15:30:57 +08:00
XarginandGitHub 4d1683a00b Merge pull request #47 from qinhanlei/patch-16
Update SUMMARY.md
2017-12-15 15:30:42 +08:00
XarginandGitHub 06093965fd Merge pull request #48 from qinhanlei/patch-17
Update ch12-09.md
2017-12-15 15:30:22 +08:00
Xargin 214cac4095 uupdate 2017-12-11 19:14:11 +08:00
Xargin a2a5cd9d9d Merge branch 'master' of https://github.com/gopl-zh/gopl-zh.github.com 2017-12-11 19:12:51 +08:00
Xargin 29140c015f fix order 2017-12-11 19:12:31 +08:00
XarginandGitHub 2f6a87500f Merge pull request #43 from qinhanlei/patch-13
Update ch10-06.md
2017-12-06 23:05:20 +08:00
XarginandGitHub 9e043e30cc Merge pull request #41 from qinhanlei/patch-11
Update SUMMARY.md
2017-12-06 18:41:40 +08:00
XarginandGitHub c151f224a6 Merge pull request #42 from qinhanlei/patch-12
Update ch9-05.md
2017-12-06 18:41:19 +08:00
XarginandGitHub 3e97cdf96b Merge pull request #40 from qinhanlei/patch-10
Update ch9-02.md
2017-12-06 15:43:38 +08:00
XarginandGitHub e0dfb180d4 Merge pull request #36 from qinhanlei/patch-6
Update ch8-10.md
2017-12-06 10:46:08 +08:00
XarginandGitHub 24e0e40d6b Merge pull request #37 from qinhanlei/patch-7
Update ch9-01.md
2017-12-06 10:45:32 +08:00
XarginandGitHub 97c96badd5 Merge pull request #38 from qinhanlei/patch-8
Update ch9-01.md
2017-12-06 10:45:11 +08:00
XarginandGitHub 666c61a7fd Merge pull request #39 from qinhanlei/patch-9
Update ch9-01.md
2017-12-06 10:44:49 +08:00
XarginandGitHub d9c9556a66 Merge pull request #35 from qinhanlei/patch-5
Update ch8-08.md
2017-12-05 16:07:00 +08:00
XarginandGitHub 4f1467f543 Merge pull request #34 from qinhanlei/patch-4
Update SUMMARY.md
2017-12-05 16:05:57 +08:00
XarginandGitHub 5230387840 Merge pull request #32 from qinhanlei/patch-2
Update ch8-04-1.md
2017-12-02 19:38:01 +08:00
XarginandGitHub 8f98ee0188 Merge pull request #33 from qinhanlei/patch-3
Update ch8-04-4.md
2017-12-02 19:37:34 +08:00
XarginandGitHub 374c07ae38 Merge pull request #31 from qinhanlei/patch-1
Update ch7-13.md
2017-12-01 11:43:53 +08:00
XarginandGitHub 9ca3fd63f0 Merge pull request #30 from mifaly/patch-1
Update ch5-07.md
2017-11-30 12:57:44 +08:00
XarginandGitHub c1b0a703bc Merge pull request #29 from A1014280203/master
补充sync.Once描述
2017-11-28 14:20:25 +08:00
XarginandGitHub fc79e5bd5c Merge pull request #27 from wukoo/patch-1
ch3-05-3.md 关于utf8编码描述的错误
2017-11-21 18:40:52 +08:00
XarginandGitHub e96160fc83 Merge pull request #28 from JimLee1996/patch-1
修改翻译中的小问题
2017-11-21 18:40:17 +08:00
Xargin d54b4d781b fix typo
diff --git a/ch0/ch0-01.md b/ch0/ch0-01.md
index ecb1c9a..ac8116f 100644
--- a/ch0/ch0-01.md
+++ b/ch0/ch0-01.md
@@ -14,7 +14,7 @@ Go语言的另一支祖先,带来了Go语言区别其他语言的重要特性

 接下来,Rob Pike和其他人开始不断尝试将[CSP](https://en.wikipedia.org/wiki/Communicating_sequential_processes)引入实际的编程语言中。他们第一次尝试引入[CSP](https://en.wikipedia.org/wiki/Communicating_sequential_processes)特性的编程语言叫[Squeak](http://doc.cat-v.org/bell_labs/squeak/)(老鼠间交流的语言),是一个提供鼠标和键盘事件处理的编程语言,它的管道是静态创建的。然后是改进版的[Newsqueak](http://doc.cat-v.org/bell_labs/squeak/)语言,提供了类似C语言语句和表达式的语法和类似[Pascal][Pascal]语言的推导语法。Newsqueak是一个带垃圾回收的纯函数式语言,它再次针对键盘、鼠标和窗口事件管理。但是在Newsqueak语言中管道是动态创建的,属于第一类值, 可以保存到变量中。

-在Plan9操作系统中,这些优秀的想法被吸收到了一个叫[Alef][Alef]的编程语言中。Alef试图将Newsqueak语言改造为系统编程语言,但是因为缺少垃圾回收机制而导致并发编程很痛苦。(译注:在Aelf之后还有一个叫[Limbo][Limbo]的编程语言,Go语言从其中借鉴了很多特性。 具体请参考Pike的讲稿:http://talks.golang.org/2012/concurrency.slide#9 )
+在Plan9操作系统中,这些优秀的想法被吸收到了一个叫[Alef][Alef]的编程语言中。Alef试图将Newsqueak语言改造为系统编程语言,但是因为缺少垃圾回收机制而导致并发编程很痛苦。(译注:在Alef之后还有一个叫[Limbo][Limbo]的编程语言,Go语言从其中借鉴了很多特性。 具体请参考Pike的讲稿:http://talks.golang.org/2012/concurrency.slide#9 )

 Go语言的其他的一些特性零散地来自于其他一些编程语言;比如iota语法是从[APL][APL]语言借鉴,词法作用域与嵌套函数来自于[Scheme][Scheme]语言(和其他很多语言)。当然,我们也可以从Go中发现很多创新的设计。比如Go语言的切片为动态数组提供了有效的随机存取的性能,这可能会让人联想到链表的底层的共享机制。还有Go语言新发明的defer语句。
2017-10-26 16:07:36 +08:00
Xargin d8213d003b fix typo
diff --git a/ch12/ch12-08.md b/ch12/ch12-08.md
index 48ab516..08511e1 100644
--- a/ch12/ch12-08.md
+++ b/ch12/ch12-08.md
@@ -18,7 +18,7 @@ func Print(x interface{}) {
 }
 ```

-reflect.Type和reflect.Value都提供了一个Method方法。每次t.Method(i)调用将一个reflect.Method的实例,对应一个用于描述一个方法的名称和类型的结构体。每次v.Method(i)方法调用都返回一个reflect.Value以表示对应的值(§6.4),也就是一个方法是帮到它的接收者的。使用reflect.Value.Call方法(我们之类没有演示),将可以调用一个Func类型的Value,但是这个例子中只用到了它的类型。
+reflect.Type和reflect.Value都提供了一个Method方法。每次t.Method(i)调用将一个reflect.Method的实例,对应一个用于描述一个方法的名称和类型的结构体。每次v.Method(i)方法调用都返回一个reflect.Value以表示对应的值(§6.4),也就是一个方法是帮到它的接收者的。使用reflect.Value.Call方法(我们这里没有演示),将可以调用一个Func类型的Value,但是这个例子中只用到了它的类型。

 这是属于time.Duration和`*strings.Replacer`两个类型的方法:
2017-09-19 13:01:29 +08:00
Xargin 3567d1d156 translation fix 2017-08-28 20:57:07 +08:00
XarginandGitHub b056972f41 Merge pull request #26 from zhliner/revised
Revised
2017-08-24 23:23:19 +08:00
XarginandGitHub 2359de67ca Merge pull request #25 from jiakai0419/master
修复拼写错误
2017-08-15 22:42:03 +08:00
Xargin 80ad3eea47 fix typo
diff --git a/ch2/ch2-03-1.md b/ch2/ch2-03-1.md
index 72656c3..456cda5 100644
--- a/ch2/ch2-03-1.md
+++ b/ch2/ch2-03-1.md
@@ -61,6 +61,6 @@ f, err := os.Open(infile)
 f, err := os.Create(outfile) // compile error: no new variables
 ```

-解决的方法是第二个简短变量声明语句改用普通的多重赋值语言。
+解决的方法是第二个简短变量声明语句改用普通的多重赋值语句。

 简短变量声明语句只有对已经在同级词法域声明过的变量才和赋值操作语句等价,如果变量是在外部词法域声明的,那么简短变量声明语句将会在当前词法域重新声明一个新的变量。我们在本章后面将会看到类似的例子。
2017-07-31 12:47:55 +08:00
Xargin 085771255c Merge branch 'master' of https://github.com/gopl-zh/gopl-zh.github.com 2017-07-19 19:09:55 +08:00
Xargin c654530129 fix typo 2017-07-19 19:09:37 +08:00
XarginandGitHub 4c2bcf7c91 Merge pull request #24 from Cataglyphis/patch-1
fix typo error
2017-07-11 22:18:19 +08:00
Xargin b55a821653 fix typo 2017-05-27 13:51:58 +08:00
Xargin abed4bb257 fix typo 2017-05-23 11:06:32 +08:00
Xargin 0dbb9f4bae Merge branch 'master' of https://github.com/gopl-zh/gopl-zh.github.com 2017-05-18 10:49:56 +08:00
Xargin e5ba6210a3 fix typo 2017-05-18 10:49:37 +08:00
曹春晖andGitHub a3f35112b8 Merge pull request #22 from gigibox/typo-fix
Update ch2/ch2-05.md, 06-1.md..
2017-05-10 10:40:59 -05:00
Xargin 2a04de30d1 change picture to ch10.7.4 2017-05-09 22:44:17 +08:00
Xargin eadc58cbbb fix typo 2017-05-05 23:20:47 +08:00
Xargin dc92697fec fix typo 2017-05-03 10:48:04 +08:00
Xargin 7f9ba35f58 fix typo 2017-05-02 18:00:28 +08:00
曹春晖andGitHub 4f9a6cd5a8 Merge pull request #20 from polaris1119/master
增加 在线预览 http://books.studygolang.com/gopl-zh/
2017-04-16 03:32:37 -05:00
Xargin ecac9edd91 Merge branch 'master' of github.com:gopl-zh/gopl-zh.github.com 2017-04-10 12:11:02 +08:00
Xargin 1119f6a37b fix typo 2017-04-10 12:10:07 +08:00
Xargin 8d5121dd01 fix wrong translation 2017-04-04 01:08:24 +08:00
Xargin 07073a0b25 按照原文补充缺失的细节 2017-03-15 15:45:11 +08:00
Xargin 25d798e636 Merge branch 'master' of github.com:gopl-zh/gopl-zh.github.com 2017-03-15 15:18:45 +08:00
Xargin 2c54595c80 fix code typo 2017-03-15 15:18:24 +08:00
Xargin 304d92be00 fix typop 2017-03-02 10:37:55 +08:00
曹春晖andGitHub e90e41c8d0 Merge pull request #16 from samael65535/patch-3
Update ch9-08-2.md
2017-02-28 18:15:18 +08:00
曹春晖andGitHub 4ed82123ff Merge pull request #17 from samael65535/patch-5
Update ch9-08-1.md
2017-02-28 18:15:08 +08:00
曹春晖andGitHub 83b1dc3b12 Merge pull request #18 from samael65535/patch-4
Update ch9-08-3.md
2017-02-28 18:14:55 +08:00
Xargin 90c0938386 remove invalid mirror 2017-02-26 17:12:21 +08:00
Xargin bbb76e7fa7 change sentence expressions 2017-02-26 17:06:56 +08:00
曹春晖andGitHub 7bbee5bdcb Merge pull request #14 from samael65535/patch-1
Update ch6-05.md
2017-02-24 11:50:55 +08:00
曹春晖andGitHub ad39db2160 Merge pull request #15 from samael65535/patch-2
Update ch7-14.md
2017-02-24 11:49:01 +08:00
Xargin ef92399241 fix typo 2017-02-21 17:48:04 +08:00
Xargin 946a6ddd21 change 面值 => 字面值 2017-01-09 19:19:24 +08:00
Xargin fdd2b6b4f1 修改说辞 2016-12-15 15:42:41 +08:00
Xargin 649771641a bugfix 2016-12-15 15:27:24 +08:00
Xargin d19d669661 润色。 2016-12-12 16:17:05 +08:00
Xargin 39f43618f6 fix typo 2016-12-09 17:43:40 +08:00
Xargin 1404ebde17 add link 2016-11-30 11:41:23 +08:00
曹春晖andGitHub 3cd7b5557d Merge pull request #12 from hacknode/patch-5
Update ch7-03.md
2016-11-22 15:36:49 +08:00
Xargin 5c649d8c65 Merge branch 'master' of github.com:gopl-zh/gopl-zh.github.com 2016-11-21 18:14:32 +08:00
Xargin c321e2c31b fix typo 2016-11-21 18:14:08 +08:00
曹春晖andGitHub e49f120bed Merge pull request #11 from hacknode/patch-3
Update ch1-08.md
2016-11-01 16:33:01 +08:00
Xargin bb71ca05f5 fix typo 2016-10-24 14:35:24 +08:00
Xargin d3ce2c9ba6 batch replace escape 2016-10-18 13:29:52 +08:00
Xargin 3da62d2c3f change escape of ch7 2016-10-18 13:20:38 +08:00
Xargin 9c768334f2 change escape type 2016-10-18 13:06:38 +08:00
Xargin a851dd1886 fix typo 2016-10-18 13:03:57 +08:00
Xargin cd0f3ff29c fix escape 2016-10-18 13:03:18 +08:00
Xargin e0e57d30b4 fix typo 2016-10-18 13:00:47 +08:00
曹春晖andGitHub e6833b16c7 Merge pull request #10 from hacknode/patch-2
Update preface.md
2016-10-11 20:06:15 +08:00
Xargin 1a5593ac1c fix typo 2016-10-10 15:17:50 +08:00