展开全部

主编推荐语

详尽讲解Go语言的基本语法和核心概念。

内容简介

本书首先介绍Go语言的基本概念,并通过“hello world”程序引导读者熟悉Go的工具链。接下来逐步深入,介绍面向包的设计、测试框架、错误与异常处理等内容。第8章开始探讨指针和内存逃逸分析,这对于理解Go语言的内存模型至关重要。随后的章节涉及数据结构、面向对象和接口编程等核心知识。

从第15章开始,重点转向并发编程,从基本的并发模式到复杂的并发原理,再到内存管理和垃圾回收等高级主题。最后几章关注实际开发中的问题,如使用标准库和第三方库、性能问题分析与追踪,以及重构“hello world”示例代码。

目录

  • 版权信息
  • 内容提要
  • 前言
  • 资源与支持
  • 第1章 Go语言初探
  • 1.1 Go语言的发展里程碑
  • 1.2 云时代Go语言的发展趋势
  • 1.3 Go语言优秀的语言特性
  • 1.4 强大的生态圈和成功案例
  • 1.5 Go程序是如何运行的
  • 1.6 plan9与Go语言
  • 第2章 “hello world”与工具链
  • 2.1 Go语言的安装和配置
  • 2.2 第一个程序“hello world”
  • 2.3 Go语言的工具链命令
  • 第3章 Go语言的基础知识
  • 3.1 Go语言的常用规范
  • 3.2 数据类型
  • 3.3 变量的本质
  • 3.4 常量
  • 3.5 运算符
  • 3.6 结构化语法
  • 3.7 类型转换
  • 3.8 Go语言的语法糖
  • 第4章 面向包的设计与依赖管理
  • 4.1 包的使用
  • 4.2 面向包的设计
  • 4.3 包管理工具Go Module
  • 第5章 测试框架
  • 5.1 Go语言中的测试框架
  • 5.2 单元测试
  • 5.3 测试代码的覆盖率
  • 5.4 断言
  • 5.5 基准测试
  • 5.6 与网络有关的模拟测试
  • 5.7 与测试有关的第三方工具
  • 第6章 错误与异常处理
  • 6.1 error的引入
  • 6.2 异常处理
  • 6.3 面向错误和恢复的设计
  • 6.4 带堆栈信息的error
  • 6.5 标准库errors的改进
  • 6.6 errGroup对象
  • 6.7 日志系统的引入
  • 第7章 编码与字符串
  • 7.1 字符编码
  • 7.2 字符串
  • 7.3 字符串与基本类型互转
  • 第8章 指针与内存逃逸分析
  • 8.1 活动帧的作用
  • 8.2 值语义的本质
  • 8.3 指针
  • 8.4 内存逃逸分析
  • 8.5 引用类型与深、浅拷贝
  • 第9章 数据结构
  • 9.1 面向数据的设计
  • 9.2 数组
  • 9.3 切片
  • 9.4 映射
  • 9.5 数据结构中的常见问题
  • 第10章 结构体与内存对齐
  • 10.1 结构体
  • 10.2 序列化与反序列化
  • 10.3 unsafe包
  • 10.4 内存对齐
  • 第11章 函数
  • 11.1 认识函数
  • 11.2 defer函数
  • 11.3 作为数据类型的函数
  • 11.4 函数类型的使用场景
  • 11.5 函数的别名
  • 第12章 面向“对象”编程
  • 12.1 封装
  • 12.2 继承
  • 12.3 多态
  • 第13章 面向接口编程
  • 13.1 接口编程哲学
  • 13.2 接口与组合
  • 13.3 接口的剖析
  • 13.4 接口的设计原则
  • 13.5 检查接口的实现
  • 13.6 空接口与类型断言
  • 13.7 接口值的比较
  • 13.8 检查运行阶段的接口类型
  • 第14章 反射
  • 14.1 反射的概念
  • 14.2 接口与反射
  • 14.3 反射包介绍
  • 14.4 反射包的使用示例
  • 14.5 反射的三个定律
  • 14.6 反射的应用场景
  • 14.7 反射的性能
  • 第15章 并发编程
  • 15.1 感受并发的魅力
  • 15.2 sync.WaitGroup
  • 15.3 数据竞争问题
  • 15.4 传统的锁
  • 15.5 原子操作介绍
  • 第16章 并发与通道
  • 16.1 通道的行为
  • 16.2 创建通道
  • 16.3 通道的特性
  • 16.4 通道的其他特性
  • 16.5 通道的使用建议
  • 16.6 select机制
  • 16.7 通道的模式
  • 第17章 其他并发技术
  • 17.1 context包
  • 17.2 sync.Cond
  • 17.3 sync.Once
  • 17.4 sync.Map
  • 17.5 sync.Pool
  • 17.6 实现对象池
  • 17.7 常用连接池
  • 17.8 并发技术选型
  • 第18章 并发原理
  • 18.1 怎样让程序跑得更快
  • 18.2 Go语言中的协程
  • 18.3 GPM调度流程
  • 18.4 监控线程sysmon
  • 18.5 main函数与协程的执行顺序
  • 18.6 可视化分析GPM调度
  • 18.7 深入探索通道
  • 第19章 内存管理
  • 19.1 runtime
  • 19.2 内存分配模型
  • 19.3 内存管理单元
  • 19.4 对象分类及分配策略
  • 19.5 堆内存分配总结
  • 第20章 垃圾回收
  • 20.1 垃圾回收算法
  • 20.2 Go语言的垃圾回收算法
  • 20.3 触发垃圾回收的时机
  • 20.4 查看运行时的垃圾回收信息
  • 20.5 垃圾回收优化示例
  • 第21章 使用标准库和第三方库
  • 21.1 I/O操作
  • 21.2 网络操作
  • 21.3 与时间有关的标准库
  • 21.4 随机数
  • 21.5 正则表达式
  • 21.6 flag包的使用
  • 21.7 os包的使用
  • 21.8 crypto包
  • 21.9 base64编码
  • 21.10 fmt包
  • 21.11 使用第三方库
  • 第22章 性能问题分析与追踪
  • 22.1 性能优化概述
  • 22.2 性能优化的步骤
  • 22.3 硬件与软件的性能指标
  • 22.4 优化工具概述
  • 22.5 性能优化总结
  • 22.6 使用go tool pprof工具进行性能分析的示例
  • 22.7 pprof包结合HTTP服务使用的示例
  • 22.8 pprof包和fgprof包的使用对比
  • 22.9 go tool trace工具的使用示例
  • 22.10 持续性能分析
  • 22.11 性能问题的定位及处理建议
  • 第23章 重构“hello world”
  • 23.1 搭建业务处理框架
  • 23.2 设计解耦的读写接口
  • 23.3 业务实现
  • 23.4 构建HTTP服务发布数据
  • 23.5 整合Prometheus发布数据
  • 23.6 代码细节的提升
  • 23.7 总结
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

人民邮电出版社

人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。