Go语言实战
作者:(美)马特·布彻,(美)马特·法里纳
出版社:机械工业出版社
出版时间:2019-03-01
ISBN:9787111617501
定价:¥79.00
译者序
序
鸣谢
前言
关于本书
关于作者
关于封面插图
第1部分1
1 走进GO语言1
1.1 何谓GO语言2
1.2 GO语言的特点4
1.2.1 多个返回值4
1.2.2 现代化的标准库6
1.2.3 goroutine 与通道的并发性(Go语言规程及通道并发性)9
1.2.4 Go工具链—不仅仅是一种语言14
1.3 众多编程语言背景下的GO语言20
1.3.1 C语言与Go语言20
1.3.2 Java 与 Go21
1.3.3 Python、PHP与Go23
1.3.4 JavaScript、Node.js与 Go25
1.4启动、运行GO语言26
1.4.1安装Go语言26
1.4.2Go语言与Git,Mercurial协同运行和版本控制27
1.4.3探索工作区27
1.4.4环境变量的使用28
1.5 GO,你好29
1.6小结31
2坚实的基础32
2.1 GO语言使用CLI应用程序的方法33
2.1.1 命令行标记33
2.1.2 命令行框架结构40
2.2 配置问题处理47
2.3使用实际的WEB服务器54
2.3.1 启动和关闭服务器55
2.3.2 路由web 请求60
2.4小结71
3 GO语言的并发性72
3.1理解GO语言的并发模型72
3.2 使用GOROUNTINE73
3.3 通道的应用88
3.4 小结101
第2部分103
4 ERROR错误与PANIC异常的处理103
4.1 ERROR错误处理104
4.2 PANIC异常系统114
4.2.1 error错误与panic异常的区分114
4.2.2 panic异常处理116
4.2.3 从panic异常中恢复过来118
4.2.4panic异常和goroutine函数125
4.3 小结134
5 调试和测试135
5.1定位BUGS135
5.1.1等等,我的调试器(debugger)在哪里?136
5.2 日志记录136
5.2.1使用Go语言的记录器137
5.2.2使用系统记录器148
5.3访问堆栈跟踪152
5.4 测试155
5.4.1 单元测试155
5.4.2生成测试162
5.5使用性能测试和基准165
5.6小结172
第3部分应用程序的接口174
6 HTML和电子邮件的模板样式174
6.1 HTML模板的使用175
6.1.1标准库HTML包概述175
6.1.2 在模板中添加函数177
6.1.3 模板解析限制180
6.1.4 模板执行中断182
6.1.5 混合模板183
6.2 在EMAIL中使用模板195
6.3 小结197
7 静态资源(ASSET)和表单的获取和接收198
7.1 获取静态内容199
7.2 表单POST的处理213
7.2.1 表单请求简介213
7.2.2 使用文件和分段提交216
7.2.3 使用原始的多个数据223
7.3 小结228
8 使用WEB服务229
8.1 使用RESET API229
8.1.1 使用HTTP客户端230
8.1.2 发生故障时232
8.2 通过HTTP传递和处理错误236
8.2.1 生成自定义错误237
8.2.2 读取和使用自定义错误238
8.3 传递和映射JSON241
8.4版本控制REST API246
8.5小结251
第四部分 将应用程序发布到云252
9 使用云252
9.1什么是云计算?253
9.1.1 云计算的类型253
9.1.2 容器和云本地应用程序255
9.2管理云服务257
9.2.1避免云提供商锁定257
9.2.2处理不一致的错误261
9.3在云服务器上运行263
9.3.1执行运行时检测263
9.3.2构建云266
9.3.3执行运行时监视269
9.4 小结271
10 云服务之间的通信272
10.1微服务和高可用性272
10.2服务之间的通信274
10.2.1 使REST更快274
10.2.2超越REST281
10.3 小结290
11反射和代码生成291
11.1反射的三个特征291
11.2 结构体,标签和注解304
11.2.1 注释结构304
11.2.2 使用标签注解305
11.3使用GO代码生成GO代码312
11.4小结319