This commit is contained in:
Unknown
2014-04-08 01:01:44 -04:00
parent 5957b043dc
commit 0c9a2e3364
9 changed files with 31 additions and 26 deletions

View File

@@ -9,7 +9,7 @@
## 翻译进度 ## 翻译进度
2.1 [平台与架构](eBook/02.1.md) 2.8 [Go 解释器](eBook/02.8.md)
## 支持本书 ## 支持本书

View File

@@ -1,5 +1,4 @@
#2.1 平台与架构 # 2.1 平台与架构
***译者注:由于 Go 语言版本更替,本节中的相关内容经原作者同意将被直接替换而不作另外说明***
Go 语言开发团队开发了适用于以下操作系统的编译器: Go 语言开发团队开发了适用于以下操作系统的编译器:
@@ -39,7 +38,7 @@ Go 语言开发团队开发了适用于以下操作系统的编译器:
(相关的 C 编译器名称为 6c、8c 和 5c相关的汇编器名称为 6a、8a 和 5a (相关的 C 编译器名称为 6c、8c 和 5c相关的汇编器名称为 6a、8a 和 5a
**标记Flags**是指可以通过命令行设置可选参数来影响编译器或链接器的构建过程或得到一个特殊的目标结果。 **标记Flags** 是指可以通过命令行设置可选参数来影响编译器或链接器的构建过程或得到一个特殊的目标结果。
可用的编译器标记如下: 可用的编译器标记如下:
@@ -76,9 +75,10 @@ Go 语言开发团队开发了适用于以下操作系统的编译器:
Go 语言的标准库第9.1节)包文件在被安装后就是使用这种格式的文件。 Go 语言的标准库第9.1节)包文件在被安装后就是使用这种格式的文件。
**注意:**当你在创建目录时,文件夹名称永远不应该包含空格,而应该使用下划线"_"或者其它一般符号代替。 **注意:** 当你在创建目录时,文件夹名称永远不应该包含空格,而应该使用下划线 "_" 或者其它一般符号代替。
## 链接
##链接
- [目录](directory.md) - [目录](directory.md)
- 上一章:[语言的主要特性与发展的环境和影响因素](01.2.md) - 上一章:[语言的主要特性与发展的环境和影响因素](01.2.md)
- 下一节:[Go 环境变量](02.2.md) - 下一节:[Go 环境变量](02.2.md)

View File

@@ -1,5 +1,4 @@
#2.2 Go 环境变量 # 2.2 Go 环境变量
***译者注:由于 Go 语言版本更替,本节中的相关内容经原作者同意将被直接替换而不作另外说明***
Go 开发环境依赖于一些操作系统环境变量,你最好在安装 Go 之间就已经设置好他们。如果你使用的是 Windows 的话你完全不用进行手动设置Go 将被默认安装在目录 `c:/go` 下。这里列举几个最为重要的环境变量: Go 开发环境依赖于一些操作系统环境变量,你最好在安装 Go 之间就已经设置好他们。如果你使用的是 Windows 的话你完全不用进行手动设置Go 将被默认安装在目录 `c:/go` 下。这里列举几个最为重要的环境变量:
@@ -20,7 +19,8 @@ Go 编译器支持交叉编译,也就是说你可以在一台机器上构建
在接下来的章节中,我们将会讨论如何在 LinuxMac OS X 和 Windows 上安装 Go 语言。在 FreeBSD 上的安装和 Linux 非常类似。开发团队正在尝试将 Go 语言移植到其它例如 OpenBSDDragonFlyBSDNetBSDPlan 9Haiku 和 Solaris 操作系统上,你可以在这个页面找到最近的动态:[http://go-lang.cat-v.org/os-ports](http://go-lang.cat-v.org/os-ports) 在接下来的章节中,我们将会讨论如何在 LinuxMac OS X 和 Windows 上安装 Go 语言。在 FreeBSD 上的安装和 Linux 非常类似。开发团队正在尝试将 Go 语言移植到其它例如 OpenBSDDragonFlyBSDNetBSDPlan 9Haiku 和 Solaris 操作系统上,你可以在这个页面找到最近的动态:[http://go-lang.cat-v.org/os-ports](http://go-lang.cat-v.org/os-ports)
##链接 ## 链接
- [目录](directory.md) - [目录](directory.md)
- 上一节:[平台与架构](02.1.md) - 上一节:[平台与架构](02.1.md)
- 下一节:[在 Linux 上安装 Go](02.3.md) - 下一节:[在 Linux 上安装 Go](02.3.md)

View File

@@ -1,5 +1,4 @@
#2.3 在 Linux 上安装 Go # 2.3 在 Linux 上安装 Go
***译者注:由于 Go 语言版本更替,本节中的相关内容经原作者同意将被直接替换而不作另外说明***
如果你能够自己下载并编译 Go 的源代码来说是非常有教育意义的,你可以根据这个页面找到安装指南和下载地址:[http://golang.org/doc/install.html](http://golang.org/doc/install.html)。 如果你能够自己下载并编译 Go 的源代码来说是非常有教育意义的,你可以根据这个页面找到安装指南和下载地址:[http://golang.org/doc/install.html](http://golang.org/doc/install.html)。
@@ -14,7 +13,7 @@
export GOARCH=386 export GOARCH=386
export GOOS=linux export GOOS=linux
***译者注:目前的 Go 版本一般情况下已不需要设置$GOBIN*** **译者注:目前的 Go 版本一般情况下已不需要设置 $GOBIN**
为了确保相关文件在文件系统的任何地方都能被调用,你还需要添加以下内容: 为了确保相关文件在文件系统的任何地方都能被调用,你还需要添加以下内容:
@@ -146,7 +145,8 @@
当你在使用不同的版本时,注意官方博客发布的信息,因为你所查阅的文档可能和你正在使用的版本不相符。 当你在使用不同的版本时,注意官方博客发布的信息,因为你所查阅的文档可能和你正在使用的版本不相符。
##链接 ## 链接
- [目录](directory.md) - [目录](directory.md)
- 上一节:[Go 环境变量](02.2.md) - 上一节:[Go 环境变量](02.2.md)
- 下一节:[在 Mac OS X 上安装 Go](02.4.md) - 下一节:[在 Mac OS X 上安装 Go](02.4.md)

View File

@@ -1,5 +1,4 @@
#2.4 在 Mac OS X 上安装 Go # 2.4 在 Mac OS X 上安装 Go
***译者注:由于 Go 语言版本更替,本节中的相关内容经原作者同意将被直接替换而不作另外说明***
如果你想要在你的 Mac 系统上安装 Go则必须使用 Intel 64 位处理器Go 不支持 PowerPC 处理器。 如果你想要在你的 Mac 系统上安装 Go则必须使用 Intel 64 位处理器Go 不支持 PowerPC 处理器。
@@ -13,7 +12,8 @@
通过源代码编译安装的过程与环境变量的配置与在 Linux 系统非常相似,因此不再赘述。 通过源代码编译安装的过程与环境变量的配置与在 Linux 系统非常相似,因此不再赘述。
##链接 ## 链接
- [目录](directory.md) - [目录](directory.md)
- 上一节:[在 Linux 上安装 Go](02.3.md) - 上一节:[在 Linux 上安装 Go](02.3.md)
- 下一节:[在 Windows 上安装 Go](02.5.md) - 下一节:[在 Windows 上安装 Go](02.5.md)

View File

@@ -1,5 +1,4 @@
#2.5 在 Windows 上安装 Go # 2.5 在 Windows 上安装 Go
***译者注:由于 Go 语言版本更替,本节中的相关内容经原作者同意将被直接替换而不作另外说明***
你可以在这个页面下载到 Windows 系统下的一键安装包:[http://code.google.com/p/go/downloads/list](http://code.google.com/p/go/downloads/list) 你可以在这个页面下载到 Windows 系统下的一键安装包:[http://code.google.com/p/go/downloads/list](http://code.google.com/p/go/downloads/list)
@@ -17,7 +16,7 @@
如果你想要在 Windows 下的虚拟机里的 Linux 系统上安装 Go你可以选择使用虚拟机软件 [VMware](http://www.vmware.com),下载 [VMware player](http://www.vmware.com/products/player/),搜索并下载一个你喜欢的 Linux 发行版镜像,然后安装到虚拟机里,安装 Go 的流程参考第 2.3 节中的内容。 如果你想要在 Windows 下的虚拟机里的 Linux 系统上安装 Go你可以选择使用虚拟机软件 [VMware](http://www.vmware.com),下载 [VMware player](http://www.vmware.com/products/player/),搜索并下载一个你喜欢的 Linux 发行版镜像,然后安装到虚拟机里,安装 Go 的流程参考第 2.3 节中的内容。
##链接 ## 链接
- [目录](directory.md) - [目录](directory.md)
- 上一节:[在 Mac OS X 上安装 Go](02.4.md) - 上一节:[在 Mac OS X 上安装 Go](02.4.md)
- 下一节:[安装目录清单](02.6.md) - 下一节:[安装目录清单](02.6.md)

View File

@@ -1,4 +1,5 @@
#2.6 安装目录清单 # 2.6 安装目录清单
你的 Go 安装目录(`$GOROOT`)的文件夹结构应该如下所示: 你的 Go 安装目录(`$GOROOT`)的文件夹结构应该如下所示:
README, AUTHORS, CONTRIBUTORS, LICENSE README, AUTHORS, CONTRIBUTORS, LICENSE
@@ -14,7 +15,8 @@ README, AUTHORS, CONTRIBUTORS, LICENSE
- `\src\lib9` `\src\libbio` `\src\libmach` 包含 C 文件 - `\src\lib9` `\src\libbio` `\src\libmach` 包含 C 文件
- `\src\pkg` 包含 Go 标准库的包的完整源代码Go 是一门开源语言) - `\src\pkg` 包含 Go 标准库的包的完整源代码Go 是一门开源语言)
##链接 ## 链接
- [目录](directory.md) - [目录](directory.md)
- 上一节:[在 Windows 上安装 Go](02.5.md) - 上一节:[在 Windows 上安装 Go](02.5.md)
- 下一节:[Go 类虚拟机runtime](02.7.md) - 下一节:[Go 类虚拟机runtime](02.7.md)

View File

@@ -1,5 +1,6 @@
#2.7 Go 类虚拟机(runtime # 2.7 Go runtime
尽管 Go 编译器产生的是本地可执行代码,这些代码仍旧运行在 Go 的 runtime这部分的代码可以在 runtime 包中找到)当中。这个 runtime 类似 Java 和 .NET 语言所用到的虚拟机它负责管理包括内存分配、垃圾回收第10.8节、栈处理、goroutine、channel、切片slice、map 和反射reflection等等。
尽管 Go 编译器产生的是本地可执行代码,这些代码仍旧运行在 Go 的 runtime这部分的代码可以在 runtime 包中找到)当中。这个 runtime 类似 Java 和 .NET 语言所用到的虚拟机,它负责管理包括内存分配、垃圾回收(第 10.8 节、栈处理、goroutine、channel、切片slice、map 和反射reflection等等。
runtime 主要由 C 语言编写,并且是每个 Go 包的最顶级包。你可以在目录 `$GOROOT/src/pkg/runtime/` 中找到相关内容(主要看 mgc0.c 和其它以 m 开头的文件)。 runtime 主要由 C 语言编写,并且是每个 Go 包的最顶级包。你可以在目录 `$GOROOT/src/pkg/runtime/` 中找到相关内容(主要看 mgc0.c 和其它以 m 开头的文件)。
@@ -7,7 +8,8 @@ runtime 主要由 C 语言编写,并且是每个 Go 包的最顶级包。你
Go 的可执行文件都比相对应的源代码文件要大很多,这恰恰说明了 Go 的 runtime 嵌入到了每一个可执行文件当中。当然在部署到数量巨大的集群时较大的文件体积也是比较头疼的问题。但总得来说Go 的部署工作还是要比 Java 和 Python 轻松得多。因为 Go 不需要依赖任何其它文件,它只需要一个单独的静态文件,这样你也不会像使用其它语言一样在各种不同版本的依赖文件之间混淆。 Go 的可执行文件都比相对应的源代码文件要大很多,这恰恰说明了 Go 的 runtime 嵌入到了每一个可执行文件当中。当然在部署到数量巨大的集群时较大的文件体积也是比较头疼的问题。但总得来说Go 的部署工作还是要比 Java 和 Python 轻松得多。因为 Go 不需要依赖任何其它文件,它只需要一个单独的静态文件,这样你也不会像使用其它语言一样在各种不同版本的依赖文件之间混淆。
##链接 ## 链接
- [目录](directory.md) - [目录](directory.md)
- 上一节:[安装目录清单](02.6.md) - 上一节:[安装目录清单](02.6.md)
- 下一节:[Go 解释器](02.8.md) - 下一节:[Go 解释器](02.8.md)

View File

@@ -1,7 +1,9 @@
#2.8 Go 解释器 # 2.8 Go 解释器
因为 Go 具有像动态语言那样快速编译的能力,自然而然地就有人会问 Go 语言能否在 REPLreal-eval-print lopp编程环境下实现。Sebastien Binet 已经使用这种环境实现了一个 Go 解释器,你可以在这个页面找到:[https://bitbucket.org/binet/igo](https://bitbucket.org/binet/igo) 因为 Go 具有像动态语言那样快速编译的能力,自然而然地就有人会问 Go 语言能否在 REPLreal-eval-print lopp编程环境下实现。Sebastien Binet 已经使用这种环境实现了一个 Go 解释器,你可以在这个页面找到:[https://bitbucket.org/binet/igo](https://bitbucket.org/binet/igo)
##链接 ## 链接
- [目录](directory.md) - [目录](directory.md)
- 上一节:[Go 类虚拟机runtime](02.7.md) - 上一节:[Go 类虚拟机runtime](02.7.md)
- 下一章:[编辑器、集成开发环境与其它工具](03.0.md) - 下一章:[编辑器、集成开发环境与其它工具](03.0.md)