更新时间:2024-08-15 17:03:48
封面
版权信息
版权
内容提要
前言
为什么要写这本书
读者对象
如何阅读本书
勘误和支持
致谢
第1章 Go语言初探
1.1 Go语言的发展里程碑
1.2 云时代Go语言的发展趋势
1.3 Go语言优秀的语言特性
1.3.1 “少即是多”的设计哲学
1.3.2 强大的runtime
1.3.3 面向接口编程
1.3.4 为工程服务的语言
1.3.5 自带标准化的测试框架
1.3.6 丰富的标准库和第三方库
1.4 强大的生态圈和成功案例
1.5 Go程序是如何运行的
1.6 plan9与Go语言
1.6.1 寄存器
1.6.2 Go语言的反汇编方法
1.6.3 反汇编的查看示例
第2章 “hello world”与工具链
2.1 Go语言的安装和配置
2.1.1 下载和安装
2.1.2 配置Go语言的环境变量
2.1.3 查看配置信息
2.2 第一个程序“hello world”
2.2.1 “hello world”程序的代码说明
2.2.2 代码的编译与运行
2.2.3 “hello world”示例总结
2.3 Go语言的工具链命令
2.3.1 与编译执行有关的工具链命令
2.3.2 获取与安装第三方包
2.3.3 工具包组合命令go tool
2.3.4 跨平台交叉编译
2.3.5 网络代理GOPROXY
第3章 Go语言的基础知识
3.1 Go语言的常用规范
3.1.1 命名与注释
3.1.2 声明
3.1.3 对变量赋值
3.1.4 包和文件
3.2 数据类型
3.2.1 基本类型
3.2.2 非引用类型和引用类型
3.2.3 用户自定义类型
3.2.4 类型别名
3.2.5 传参方式
3.3 变量的本质
3.3.1 类型的两个要素
3.3.2 变量的声明
3.3.3 零值机制
3.3.4 短变量声明与类型转换
3.4 常量
3.4.1 常量iota
3.4.2 常量的类型提升机制
3.5 运算符
3.5.1 算术运算符
3.5.2 比较运算符
3.5.3 逻辑运算符
3.5.4 位运算符
3.5.5 赋值运算符
3.5.6 指针运算符
3.6 结构化语法
3.6.1 循环结构
3.6.2 条件语句
3.6.3 switch-case语句
3.6.4 控制或跳出循环语句的关键字
3.7 类型转换
3.7.1 转换的语法
3.7.2 类型断言
3.8 Go语言的语法糖
3.8.1 短变量声明和new函数
3.8.2 符号“...”与切片
3.8.3 for range
第4章 面向包的设计与依赖管理
4.1 包的使用
4.1.1 包的概述
4.1.2 包的查找方式
4.1.3 包加载的顺序
4.1.4 包中init函数的加载
4.1.5 包加载顺序的示例
4.1.6 包的使用总结
4.2 面向包的设计
4.3 包管理工具Go Module
4.3.1 包管理的方式
4.3.2 Go Module简介
4.3.3 开启Go Module
4.3.4 Go Module的优点
4.3.5 使用Go Module
4.3.6 go.mod文件中的命令
4.3.7 升级依赖包的方法
4.3.8 依赖包版本的选择
4.3.9 语义版本的导入路径语法
4.3.10 Go Module的使用总结