Awesome
Mastering_Go_Second_Edition_Zh_CN
Mastering Go 第二版中文版来袭!
在线阅读
英文版第二版的 Mastering Go不知不觉上线了,https://www.packtpub.com/programming/mastering-go-second-edition
第一版在广大Golang爱好者的大力支持下已经完成release,我们开始第二版的翻译。
翻译规则目前先参考第一版,https://github.com/hantmac/Mastering_Go_ZH_CN
领取翻译章节的话,先起一个issue,表明领取的章节,然后给一个大致的DDL,及时同步翻译进展,以方便其他人了解进度。
项目刚刚启动,对初学者来说可以 强迫自己读一些英文原著,也是不错的学习机会;golang大佬也可以对翻译的效果给予指导。
有兴趣的可加入交流群,或者通过邮件沟通:hantmac@outlook.com(发邮件领取第二版英文电子版即可参与)
交流社区
有兴趣的读者可加golang交流群,大家一起交流。
关注公众号Go_Official_Blog 了解更多官方资讯。
翻译进度
持续更新中。。。。
-
- 01.0 前言
- 01.1 Go的历史
- 01.2 Go的未来
- 01.3 Go的特性
- 01.3.1 Go是完美的吗
- 01.3.2 什么是预处理器
- 01.3.3 godoc
- 01.4 编译Go代码
- 01.5 执行Go代码
- 01.6 Go的两条规范
- 01.6.1 package 的导入规则
- 01.6.2 大括号的唯一位置
- 01.7 Go package 的下载
- 01.8 UNIX标准输入,标准输出,标准错误
- 01.9 关于print
- 01.10 使用标准输出
- 01.11 获取用户输入
- 01.11.1 关于:= 和 =
- 01.11.2 从标准输入读取数据
- 01.11.3 操作命令行参数
- 01.12 错误输出
- 01.13 写入日志文件
- 01.13.1 日志级别
- 01.13.2 日志工具
- 01.13.3 日志服务器
- 01.13.4 发送到日志文件
- 01.13.5 关于log.Fatal()
- 01.13.6 关于log.panic()
- 01.13.7 写入指定的日志文件
- 01.13.8 日志中打印行号
- 01.14 Go的错误处理
- 01.14.1 错误类型
- 01.14.2 错误处理
- 01.15 使用Docker
- 01.16 更多练习
- 01.17 本章小结
-
- 03.1 Go数值类型
- 03.1.1 整数
- 03.1.2 浮点数
- 03.1.3 复数
- 03.1.4 Go for循环
- 03.2 Go的循环
- 03.2.1 for
- 03.2.2 while
- 03.2.3 range
- 03.2.4 for 代码示例
- 03.3 数组
- 03.3.1 多维数组
- 03.3.2 Go数组的缺点
- 03.4 Go切片
- 03.4.1 切片的基本操作
- 03.4.2 切片的自动扩容
- 03.4.3 byte切片
- 03.4.4 copy()函数
- 03.4.5 多维切片
- 03.4.6 切片使用的代码示例
- 03.4.7 使用sort.slice()排序
- 03.4.8 为切片追加数组
- 03.5 Go map
- 03.5.1 map值为nil的坑
- 03.5.2 什么时候该用map
- 03.6 Go常量
- 03.6.1 常量生成器:iota
- 03.7 Go指针
- 03.7.1 为什么使用指针
- 03.8 时间与日期处理技巧
- 03.8.1 解析时间
- 03.8.2 解析时间的代码示例
- 03.8.3 解析日期
- 03.8.4 解析日期的代码示例
- 03.8.5 格式化时间与日期
- 03.8.6 测量执行时间
- 03.8.7 测量Go的垃圾回收速度
- 03.9 有用的链接和练习
- 03.10 本章小结
-
chapter 9 并发-goroutine,channel和pipelines
- 09.1 关于进程,线程与goroutine
- 09.1.1 Go scheduler
- 09.1.2 并发与并行
- 09.2 goroutine
- 09.2.1 创建goroutine
- 09.2.2创建多个goroutine
- 09.3 优雅地结束goroutine
- 09.3.1 当Add()和Done()的数量不匹配时会发生什么?
- 09.4 channel
- 09.4.1 往通道中写入
- 09.4.2 从通道中接收
- 09.4.3 从关闭的channel中读数据会发生什么
- 09.4.4 通道作为函数参数传递
- 09.5 管道
- 09.6 竟态条件
- 09.7 比较Go和Rust的并发模型
- 09.8 比较Go和Erlang的并发模型
- 09.9 其他学习资源
- 09.10 练习题
- 09.11 本章小结
规则&&Fork&&PR
-
章节命名规则:举例,第一章第一节,01.1.md,如果第一节下面还有分支,01.1.1,依次类推;
-
联系邮箱,取得电子版,获得安排的翻译章节,Fork分支,提交PR;
-
由多人审核后,合并
致谢
授权许可
除特别声明外,本书中的内容使用 CC BY-SA 3.0 License(创作共用 署名-相同方式共享3.0 许可协议)授权,代码遵循 BSD 3-Clause License(3 项条款的 BSD 许可协议)。
Go学习资料及社区(持续更新中。。。)
- Go By Example 英文网站
- Go By Example 中文网站
- GOCN Forum
- Go语言中文网
- Go walker 强大的Go在线API文档
- jsonTOGo 好用的json转go struct工具
- Go web框架beego
- 官方代码规范指导
- xorm支持 MySQL、PostgreSQL、SQLite3 以及 MsSQL
- mgoMongoDB 官方推荐驱动
- gorm全功能 ORM (无限接近) 支持 MySQL、PostgreSQL、SQLite3 以及 MsSQL