内容简介
《Go语言程序设计》既是一本实用的Go语言教程,又是一本权威的Go语言参考手册。书中从如何获取和安装Go语言环境,以及如何建立和运行Go程序开始,逐步介绍了Go语言的语法、特性以及一些标准库,内置数据类型、语句和控制结构,然后讲解了如何在Go语言中进行面向对象编程,Go语言的并发特性,如何导入和使用标准库包、自定义包及第三方软件包,提供了评价Go语言、以Go语言思考以及用Go语言编写高性能软件所需的所有知识。 《Go语言程序设计》的目的是通过使用语言本身提供的所有特性以及Go语言标准库中一些最常用的包,向读者介绍如何进行地道的Go语言编程。《Go语言程序设计》自始至终完全从实践的角度出发,每一章提供多个生动的代码示例和专门设计的动手实验,帮助读者快速掌握开发技能。《Go语言程序设计》适合对Go语言感兴趣的各个层次的Go语言程序员阅读和参考。
目录
第1章 5个例子
1.1 开始
1.2 编辑、编译和运行
1.3 Hello Who?
1.4 大数字——二维切片
1.5 栈——自定义类型及其方法
1.6 americanise示例——文件、映射和闭包
1.7 从极坐标到笛卡儿坐标——并发
1.8 练习
第2章 布尔与数值类型
2.1 基础
2.2 布尔值和布尔表达式
2.3 数值类型
2.3.1 整型
2.3.2 浮点类型
2.4 例子:statistics
2.4.1 实现一个简单的统计函数
2.4.2 实现一个基本的HTTP服务器
2.5 练习
第3章 字符串
3.1 字面量、操作符和转义
3.2 比较字符串
3.3 字符和字符串
3.4 字符串索引与切片
3.5 使用fmt包来格式化字符串
3.5.1 格式化布尔值
3.5.2 格式化整数
3.5.3 格式化字符
3.5.4 格式化浮点数
3.5.5 格式化字符串和切片
3.5.6 为调试格式化
3.6 其他字符处理相关的包
3.6.1 strings包
3.6.2 strconv包
3.6.3 utf8包
3.6.4 unicode包
3.6.5 regexp包
3.7 例子:m3u2pls
3.8 练习
第4章 集合类型
4.1 值、指针和引用类型
4.2 数组和切片
4.2.1 索引与分割切片
4.2.2 遍历切片
4.2.3 修改切片
4.2.4 排序和搜索切片
4.3 映射
4.3.1 创建和填充映射
4.3.2 映射查询
4.3.3 修改映射
4.3.4 键序遍历映射
4.3.5 映射反转
4.4 例子
4.4.1 猜测分隔符
4.4.2 词频统计
4.5 练习
第5章 过程式编程
5.1 语句基础
5.1.1 类型转换
5.1.2 类型断言
5.2 分支
5.2.1 if语句
5.2.2 switch语句
5.3 for循环语句
5.4 通信和并发语句
5.5 defer、panic和recover
5.6 自定义函数
5.6.1 函数参数
5.6.2 init()函数和main()函数
5.6.3 闭包
5.6.4 递归函数
5.6.5 运行时选择函数
5.6.6 泛型函数
5.6.7 高阶函数
5.7 例子:缩进排序
5.8 练习
第6章 面向对象编程
6.1 几个关键概念
6.2 自定义类型
6.2.1 添加方法
6.2.2 验证类型
6.3 接口
6.4 结构体
6.5 例子
6.5.1 FuzzyBool——一个单值自定义类型
6.5.2 Shapes——一系列自定义类型
6.5.3 有序映射——一个通用的集合类型
6.6 练习
第7章 并发编程
7.1 关键概念
7.2 例子
7.2.1 过滤器
7.2.2 并发的Grep
7.2.3 线程安全的映射
7.2.4 Apache报告
7.2.5 查找副本
7.3 练习
第8章 文件处理
8.1 自定义数据文件
8.1.1 处理JSON文件
8.1.2 处理XML文件
8.1.3 处理纯文本文件
8.1.4 处理Go语言二进制文件
8.1.5 处理自定义的二进制文件
8.2 归档文件
8.2.1 创建zip归档文件
8.2.2 创建可压缩的tar包
8.2.3 解开zip归档文件
8.2.4 解开tar归档文件
8.3 练习
第9章 包
9.1 自定义包
9.1.1 创建自定义的包
9.1.2 导入包
9.2 第三方包
9.3 Go命令行工具简介
9.4 Go标准库简介
9.4.1 归档和压缩包
9.4.2 字节流和字符串相关的包
9.4.3 容器包
9.4.4 文件和操作系统相关的包
9.4.5 图像处理相关的包
9.4.6 数学处理包
9.4.7 其他一些包
9.4.8 网络包
9.4.9 反射包
9.5 练习
附录A 后记
附录B 软件专利的危害
附录C 精选书目
文档截图