diff --git a/README.md b/README.md index 7270a89..1c750eb 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ 该翻译版本已获得原作者(Ivo Balbaert)本人授权,并表示支持开源事业的发展! ##翻译进度 -3.2 [编辑器和集成开发环境](eBook/03.2.md) +3.4 [构建并运行 Go 程序](eBook/03.4.md) ##支持本书 如果你喜欢本书《Go入门指南》,你可以参与到本书的翻译或纠正工作中来,一同完善本书并帮助壮大 Go 语言在国内的学习群体,给大家提供更好的学习资源。 diff --git a/eBook/03.3.md b/eBook/03.3.md index 75c678a..23bd707 100644 --- a/eBook/03.3.md +++ b/eBook/03.3.md @@ -1,19 +1,17 @@ -##啊哦,亲,你看得也太快了。。。还没翻译完呢 0 0 -要不等到 ***2013 年 4 月 20 日*** 再来看看吧~~ - -这里还有一些其它的学习资源噢~ - - - [《Go编程基础》](https://github.com/Unknwon/go-fundamental-programming):已更新至 [第八课](https://github.com/Unknwon/go-fundamental-programming/blob/master/lecture6/lecture6.md) - - [《Go Web编程》](https://github.com/astaxie/build-web-application-with-golang) - -神马?你说你不想学习?那好吧,去逛逛论坛看看行情也行~ - -- [Golang中文社区](http://bbs.mygolang.com/forum.php) -- [Go语言学习园地](http://studygolang.com/) -- [Golang中国](http://golang.tc) - #3.3 调试器 +( ***译者注:由于 Go 语言版本更替,本节中的相关内容经原作者同意将被直接替换而不作另外说明*** ) +应用程序的开发过程中调试是必不可少的一个环节,因此有一个好的调试器是非常重要的,可惜的是,Go 在这方面的发展还不是很完善。目前可用的调试器是 gdb,最新版均以内置在集成开发环境 LiteIDE 和 GoClipse 中,但是该调试器的调试方式并不灵活且操作难度较大。 + +如果你不想使用调试器,你可以按照下面的一些有用的方法来达到基本调试的目的: + +1. 在合适的位置使用打印语句输出相关变量的值(`print`/`println` 和 `fmt.Print`/`fmt.Println`/`fmt.Printf`)。 +2. 在 `fmt.Printf` 中使用下面的说明符来打印有关变量的相关信息: + - `%+v` 打印包括字段在内的实例的完整信息 + - `%#v` 打印包括字段和限定类型名称在内的实例的完整信息 + - `%T` 打印某个类型的完整说明 +3. 使用 panic 语句(第 13.2 节)来获取栈跟踪信息(直到 panic 时所有被调用函数的列表)。 +4. 使用关键字 defer 来跟踪代码执行过程(第 6.4 节)。 ##链接 - [目录](directory.md) diff --git a/eBook/03.4.md b/eBook/03.4.md new file mode 100644 index 0000000..10e2b70 --- /dev/null +++ b/eBook/03.4.md @@ -0,0 +1,16 @@ +#3.4 构建并运行 Go 程序 +( ***译者注:由于 Go 语言版本更替,本节中的相关内容经原作者同意将被直接替换而不作另外说明*** ) + +在大多数 IDE 中,每次构建程序之前都会自动调用源码格式化工具 `gofmt` 并保存格式化后的源文件。如果构建成功则不会输出任何信息,而当发生编译时错误时,则会指明源码中具体第几行出现了什么错误,如:`a declared and not used`。一般情况下,你可以双击 IDE 中的错误信息直接跳转到发生错误的那一行。 + +如果程序执行一切顺利并成功退出后,将会在控制台输出 `Program exited with code 0`。 + +从 Go 1 版本开始,使用 Go 自带的更加方便的工具来构建应用程序: + +- `go build` 编译并安装自身包和依赖包 +- `go install` 安装自身包和依赖包 + +##链接 +- [目录](directory.md) +- 上一节:[调试器](03.3.md) +- 下一节:[格式化代码](03.5.md) \ No newline at end of file diff --git a/eBook/03.5.md b/eBook/03.5.md new file mode 100644 index 0000000..97142a8 --- /dev/null +++ b/eBook/03.5.md @@ -0,0 +1,21 @@ +##啊哦,亲,你看得也太快了。。。还没翻译完呢 0 0 +要不等到 ***2013 年 4 月 20 日*** 再来看看吧~~ + +这里还有一些其它的学习资源噢~ + + - [《Go编程基础》](https://github.com/Unknwon/go-fundamental-programming):已更新至 [第八课](https://github.com/Unknwon/go-fundamental-programming/blob/master/lecture8/lecture8.md) + - [《Go Web编程》](https://github.com/astaxie/build-web-application-with-golang) + +神马?你说你不想学习?那好吧,去逛逛论坛看看行情也行~ + +- [Golang中文社区](http://bbs.mygolang.com/forum.php) +- [Go语言学习园地](http://studygolang.com/) +- [Golang中国](http://golang.tc) + +#3.5 格式化代码 + + +##链接 +- [目录](directory.md) +- 上一节:[构建并运行 Go 程序](03.4.md) +- 下一节:[生成代码文档](03.6.md) \ No newline at end of file diff --git a/eBook/directory.md b/eBook/directory.md index 16f239a..ef9b26a 100644 --- a/eBook/directory.md +++ b/eBook/directory.md @@ -19,6 +19,8 @@ - 3.2 [编辑器和集成开发环境](03.2.md) - 3.3 [调试器](03.3.md) - 3.4 [构建并运行 Go 程序](03.4.md) + - 3.5 [格式化代码](03.5.md) + - 3.6 [生成代码文档](03.6.md) ##第二部分:语言的核心结构与技术 - 第4章:基本结构和基本数据类型