计算机
类型
可以朗读
语音朗读
202千字
字数
2020-08-01
发行日期
展开全部
主编推荐语
全书11章,涵盖Go语言基础、面向对象、IO文件处理,并发、Web应用及实战项目。
内容简介
全书分为11章,第1章是所有技术类原因的基础,就是环境和历史。第2~6章是Go语言的语法基础,包括常量变量、流程控制、函数、复合数据类型这些最基础的语法,第7章是面向对象,这也是语言必学基础。第8章学习Go语言的IO文件处理。第9章和第10章分别是Go语言的两个应用方向,并发和Web。最后一章通过一个并发聊天项目完善和复习前面所学。
目录
- 封面页
- 书名页
- 版权页
- 内容简介
- 前言
- 目录
- 第1章 搭建Go开发环境
- 1.1 Go的语言特性
- 1.2 安装
- 1.2.1 Windows下安装Go
- 1.2.2 Linux下安装Go
- 1.3 配置环境变量
- 1.3.1 Windows下的环境变量配置
- 1.3.2 Linux下的环境变量配置
- 1.4 第一个Go程序
- 1.4.1 搭建本书项目代码结构
- 1.4.2 创建并运行第一个Go程序
- 1.4.3 Go程序的编译
- 1.4.4 Go的帮助系统
- 1.5 运行时
- 1.6 编译器
- 1.6.1 词法分析和语法分析
- 1.6.2 类型检查
- 1.6.3 生成SSA中间代码
- 1.6.4 生成机器代码
- 1.7 Go程序的集成开发环境
- 1.8 演练:Exit自动退出程序
- 1.9 本章小结
- 第2章 Go程序的基础要素
- 2.1 命名规范
- 2.2 包
- 2.2.1 包的导入
- 2.2.2 包的嵌套
- 2.2.3 特殊的init函数
- 2.3 数据类型
- 2.3.1 字符串类型
- 2.3.2 数值类型
- 2.3.3 布尔类型
- 2.3.4 派生类型
- 2.4 常量
- 2.5 变量
- 2.6 运算符
- 2.6.1 算术运算符
- 2.6.2 关系运算符
- 2.6.3 逻辑运算符
- 2.6.4 位运算符
- 2.6.5 赋值运算符
- 2.6.6 特殊运算符
- 2.6.7 运算符的优先级
- 2.7 注释
- 2.8 类型转换
- 2.9 演练:原子计算器
- 2.10 小结
- 第3章 函数
- 3.1 函数的结构
- 3.1.1 Go语言函数的基本结构
- 3.1.2 函数中的变量存储(堆栈)
- 3.1.3 函数返回函数
- 3.2 函数返回多个值的特性
- 3.3 作用域
- 3.4 匿名函数
- 3.4.1 匿名函数的即时调用
- 3.4.2 匿名函数的重复调用
- 3.5 变长函数
- 3.6 递归函数
- 3.6.1 使用递归函数求解斐波那契数列
- 3.6.2 使用循环代替递归的方法
- 3.7 回调函数
- 3.8 闭包
- 3.9 defer关键字
- 3.10 演练:原子计算器2.0迭代版
- 3.11 小结
- 第4章 流程控制与错误处理
- 4.1 if判断
- 4.1.1 if语句的基本语法
- 4.1.2 if语句中的变量作用域
- 4.2 switch条件判断语句
- 4.2.1 switch语句中的基本语法
- 4.2.2 fallthrough穿透
- 4.2.3 case多个表达式
- 4.2.4 switch省略判断条件
- 4.3 for循环语句
- 4.4 break与continue
- 4.5 Go的错误处理机制
- 4.5.1 error
- 4.5.2 panic
- 4.6 演练:哲学的三段论
- 4.7 小结
- 第5章 复合数据类型
- 5.1 type关键字
- 5.2 struct类型
- 5.2.1 声明struct
- 5.2.2 struct作为函数的参数
- 5.2.3 给struct定义方法
- 5.2.4 struct嵌套
- 5.3 匿名struct类型
- 5.4 数组
- 5.4.1 创建数组
- 5.4.2 数组作为函数的参数
- 5.4.3 二维数组
- 5.4.4 数组元素是struct
- 5.5 切片
- 5.5.1 切片的内部实现
- 5.5.2 切片的切割
- 5.5.3 切片的扩容
- 5.5.4 切片作为函数的参数
- 5.6 字典
- 5.6.1 创建字典
- 5.6.2 字典作为函数的参数
- 5.7 range关键字
- 5.8 演练:内存数据库
- 5.9 小结
- 第6章 指针
- 6.1 内存地址
- 6.2 指针的应用
- 6.2.1 什么是指针
- 6.2.2 声明指针
- 6.2.3 关键字new
- 6.2.4 获取元素地址
- 6.2.5 unsafe包
- 6.2.6 指针的指针
- 6.3 野指针
- 6.4 值传参与地址传参
- 6.5 演练:Go单向链表的实现
- 6.6 小结
- 第7章 面向对象和接口
- 7.1 结构体实现封装
- 7.2 组合实现继承
- 7.3 接口实现
- 7.4 类型判断与断言
- 7.5 接口实现多态
- 7.6 演练:SQL生成器的实现
- 7.7 小结
- 第8章 文件读写
- 8.1 文件读取
- 8.1.1 整块读取
- 8.1.2 分字节读取
- 8.1.3 分行读取
- 8.2 文件写入
- 8.2.1 整块写入
- 8.2.2 分字节写入
- 8.2.3 分行写入
- 8.3 自己开发io包下的读写接口
- 8.4 目录操作
- 8.4.1 目录的基本操作
- 8.4.2 目录的遍历
- 8.5 演练:property配置文件的操作
- 8.6 小结
- 第9章 图解并发编程
- 9.1 单核并发
- 9.2 锁机制
- 9.3 并行——多核并行
- 9.4 Go调度器
- 9.5 协程
- 9.6 协程间通信
- 9.6.1 共享变量
- 9.6.2 信道
- 9.7 无缓冲信道
- 9.8 有缓冲信道
- 9.9 信道和缓冲生成I/O流
- 9.10 协程调试
- 9.10.1 死锁
- 9.10.2 数据竞争
- 9.10.3 协程泄漏
- 9.11 协程性能测试
- 9.11.1 Go语言自带的测试工具
- 9.11.2 性能测试工具pprof
- 9.11.3 追踪分析工具go tool trace
- 9.12 演练:单机MapReduce单词统计
- 9.13 小结
- 第10章 反射
- 10.1 反射的概念和基本用法
- 10.2 获取结构体字段和方法
- 10.3 反射动态修改值
- 10.4 获取结构体字段标识
- 10.5 判断是否实现接口
- 10.6 动态调用方法
- 10.7 演练:ORM基本实现
- 10.8 小结
- 第11章 Go的Web服务
- 11.1 HTTP/HTTPS
- 11.1.1 HTTP协议原理
- 11.1.2 HTTPS协议原理
- 11.1.3 Go语言的net/http包
- 11.1.4 使用Go语言构建HTTP Web服务程序
- 11.2 WebSocket
- 11.2.1 WebSocket协议原理
- 11.2.2 使用Go语言实现WebSocket服务端
- 11.2.3 使用Go语言实现WebSocket客户端
- 11.3 SSE
- 11.3.1 SSE技术原理
- 11.3.2 使用Go语言实现SSE通信
- 11.4 演练:构建自己的Web服务器
- 11.5 小结
- 第12章 实战:并发聊天
- 12.1 需求描述
- 12.2 需求分析
- 12.3 技术选型
- 12.4 架构
- 12.5 代码分析
- 12.6 小结
展开全部
出版方
清华大学出版社
清华大学出版社成立于1980年6月,是由教育部主管、清华大学主办的综合出版单位。植根于“清华”这座久负盛名的高等学府,秉承清华人“自强不息,厚德载物”的人文精神,清华大学出版社在短短二十多年的时间里,迅速成长起来。清华大学出版社始终坚持弘扬科技文化产业、服务科教兴国战略的出版方向,把出版高等学校教学用书和科技图书作为主要任务,并为促进学术交流、繁荣出版事业设立了多项出版基金,逐渐形成了以出版高水平的教材和学术专著为主的鲜明特色,在教育出版领域树立了强势品牌。