展开全部

主编推荐语

本书从多角度、全方位竭力帮你快速掌握软件开发技能。

内容简介

本书采取“基础知识→核心应用→高级应用→项目实践”的结构和“由浅入深,由深到精”的学习模式进行讲解。

全书共14章。

首先,讲解了Go语言开发环境的搭建及开发工具的使用、程序元素的构成、基本数据类型、流程控制语句等基础知识;

接着,深入介绍了复合数据类型、Go语言函数、结构体与方法等核心应用技术;

然后详细探讨了Go语言接口的实现、Go语言的并发、反射机制及包等高级应用;

最后,在实践环节,通过对网络编程、Go语言的文件处理、编译与工具等内容的讲解,让读者掌握在实际操作中对Go语言的网络编程的处理,同时学会应对出现错误问题的方法。

目录

  • 版权信息
  • 内容简介
  • 前言
  • 第1篇 基础知识
  • 第1章 走进Go语言的世界
  • 1.1 初识Go语言
  • 1.1.1 Go语言的诞生
  • 1.1.2 Go语言的特性
  • 1.1.3 Go语言的使用
  • 1.2 部署Go语言的开发环境
  • 1.2.1 Go语言的环境变量
  • 1.2.2 在Windows上安装Go语言环境
  • 1.2.3 在Linux上安装Go语言环境
  • 1.2.4 在Mac OS上安装Go语言环境
  • 1.3 Go语言开发工具的使用
  • 1.3.1 LiteIDE
  • 1.3.2 Gogland
  • 1.3.3 Visual Studio Code
  • 1.4 Go语言的目录结构
  • 1.4.1 GOROOT结构
  • 1.4.2 GOPATH结构
  • 1.5 第一个Go语言程序
  • 1.6 就业面试技巧与解析
  • 1.6.1 面试技巧与解析(一)
  • 1.6.2 面试技巧与解析(二)
  • 第2章 Go语言程序元素的构成
  • 2.1 词法单元
  • 2.1.1 标识符
  • 2.1.2 关键字
  • 2.1.3 字面量
  • 2.1.4 分隔符
  • 2.1.5 运算符
  • 2.1.6 注释
  • 2.2 常量
  • 2.2.1 常量的定义
  • 2.2.2 常量的声明
  • 2.2.3 转义字符
  • 2.2.4 赋值
  • 2.2.5 枚举
  • 2.3 变量
  • 2.3.1 变量的声明
  • 2.3.2 初始化变量
  • 2.3.3 多个变量同时赋值
  • 2.3.4 匿名变量
  • 2.3.5 变量的作用域
  • 2.4 就业面试技巧与解析
  • 2.4.1 面试技巧与解析(一)
  • 2.4.2 面试技巧与解析(二)
  • 第3章 基本数据类型
  • 3.1 整型
  • 3.1.1 整型的类型与声明
  • 3.1.2 整型的运算
  • 3.2 浮点型
  • 3.3 字符与字符串
  • 3.3.1 字符串的表示
  • 3.3.2 操作字符串
  • 3.3.3 字符串格式化
  • 3.4 布尔型
  • 3.4.1 布尔型的表示
  • 3.4.2 布尔型的运算
  • 3.5 数据类型的转换
  • 3.6 指针
  • 3.6.1 指针地址和指针类型
  • 3.6.2 指针的创建
  • 3.6.3 从指针获取指向指针的值
  • 3.6.4 使用指针修改值
  • 3.7 类型别名
  • 3.7.1 类型别名与类型定义
  • 3.7.2 非本地类型不能定义方法
  • 3.7.3 在结构体成员嵌入时使用别名
  • 3.8 就业面试技巧与解析
  • 3.8.1 面试技巧与解析(一)
  • 3.8.2 面试技巧与解析(二)
  • 第4章 流程控制
  • 4.1 条件判断
  • 4.1.1 if语句
  • 4.1.2 if-else语句
  • 4.1.3 else-if语句
  • 4.1.4 使用if语句的注意事项
  • 4.2 选择结构
  • 4.2.1 switch语句
  • 4.2.2 select语句
  • 4.3 循环结构
  • 4.3.1 for语句
  • 4.3.2 range语句
  • 4.4 defer语句
  • 4.5 标签
  • 4.5.1 break语句
  • 4.5.2 continue语句
  • 4.5.3 goto语句
  • 4.6 就业面试技巧与解析
  • 4.6.1 面试技巧与解析(一)
  • 4.6.2 面试技巧与解析(二)
  • 第2篇 核心应用
  • 第5章 复合数据类型
  • 5.1 数组
  • 5.1.1 数组的声明
  • 5.1.2 数组的初始化
  • 5.1.3 数组的遍历
  • 5.1.4 多维数组
  • 5.2 切片
  • 5.2.1 创建切片
  • 5.2.2 使用append()函数添加元素
  • 5.2.3 切片的复制
  • 5.2.4 切片的删除
  • 5.3 映射
  • 5.3.1 创建映射
  • 5.3.2 映射的遍历
  • 5.3.3 map元素的删除和清空
  • 5.4 列表
  • 5.4.1 初始化列表
  • 5.4.2 在列表中插入元素
  • 5.4.3 从列表中删除元素
  • 5.4.4 列表的遍历
  • 5.5 就业面试技巧与解析
  • 5.5.1 面试技巧与解析(一)
  • 5.5.2 面试技巧与解析(二)
  • 第6章 Go语言函数
  • 6.1 认识函数
  • 6.1.1 函数的声明
  • 6.1.2 函数的调用
  • 6.1.3 函数的参数
  • 6.1.4 函数的返回值
  • 6.2 函数类型和匿名函数
  • 6.2.1 函数类型
  • 6.2.2 匿名函数
  • 6.3 函数类型实现接口
  • 6.3.1 结构体实现接口
  • 6.3.2 函数体实现接口
  • 6.4 defer
  • 6.4.1 defer的用途
  • 6.4.2 执行顺序
  • 6.5 闭包
  • 6.5.1 什么是闭包
  • 6.5.2 在闭包内部修改引用的变量
  • 6.6 宕机与宕机恢复
  • 6.6.1 宕机(panic)
  • 6.6.2 宕机恢复(recover)
  • 6.7 错误与处理
  • 6.7.1 错误接口
  • 6.7.2 自定义错误
  • 6.7.3 错误和异常
  • 6.8 就业面试技巧与解析
  • 6.8.1 面试技巧与解析(一)
  • 6.8.2 面试技巧与解析(二)
  • 第7章 结构体与方法
  • 7.1 结构体
  • 7.1.1 结构体的定义
  • 7.1.2 创建结构体
  • 7.1.3 结构体的使用
  • 7.1.4 成员变量的初始化
  • 7.1.5 匿名字段和内嵌结构体
  • 7.2 类型系统
  • 7.2.1 命名类型和未命名类型
  • 7.2.2 自定义类型
  • 7.2.3 类型的强制转换
  • 7.3 方法
  • 7.3.1 方法的声明
  • 7.3.2 为结构体添加方法
  • 7.3.3 为类型添加方法
  • 7.3.4 工厂方法创建结构体
  • 7.3.5 基于指针对象的方法
  • 7.3.6 方法值和方法表达式
  • 7.3.7 嵌入类型的方法和继承
  • 7.4 就业面试技巧与解析
  • 7.4.1 面试技巧与解析(一)
  • 7.4.2 面试技巧与解析(二)
  • 第3篇 高级应用
  • 第8章 Go语言接口的实现
  • 8.1 认识接口
  • 8.1.1 接口的声明
  • 8.1.2 接口初始化
  • 8.1.3 接口的方法调用
  • 8.2 接口的运算
  • 8.2.1 类型断言
  • 8.2.2 类型查询
  • 8.2.3 接口的使用形式和优点
  • 8.3 类型与接口
  • 8.3.1 接口类型
  • 8.3.2 类型与接口之间的关系
  • 8.4 空接口
  • 8.4.1 什么是空接口
  • 8.4.2 空接口和nil
  • 8.4.3 空接口的使用
  • 8.5 接口的内部实现
  • 8.5.1 数据结构
  • 8.5.2 接口的调用过程
  • 8.5.3 空接口的数据结构
  • 8.6 就业面试技巧与解析
  • 8.6.1 面试技巧与解析(一)
  • 8.6.2 面试技巧与解析(二)
  • 第9章 Go语言的并发
  • 9.1 并发基础
  • 9.1.1 并发与并行
  • 9.1.2 指定使用核心数
  • 9.1.3 并发与并行的区别
  • 9.2 goroutine
  • 9.2.1 什么是goroutine
  • 9.2.2 goroutine的创建
  • 9.2.3 协程间的通信
  • 9.3 通道
  • 9.3.1 声明通道类型
  • 9.3.2 创建通道
  • 9.3.3 通道的作用
  • 9.3.4 select
  • 9.3.5 缓冲机制
  • 9.3.6 通道的传递
  • 9.3.7 单向通道
  • 9.3.8 关闭通道
  • 9.3.9 超时和计时器
  • 9.4 并发的进阶
  • 9.4.1 多核并行化
  • 9.4.2 协程的同步
  • 9.4.3 协程与恢复
  • 9.4.4 生成器
  • 9.4.5 并发模型
  • 9.5 就业面试技巧与解析
  • 9.5.1 面试技巧与解析(一)
  • 9.5.2 面试技巧与解析(二)
  • 第10章 反射机制
  • 10.1 反射的类型对象
  • 10.1.1 反射的类型(Type)与种类(Kind)
  • 10.1.2 指针与指针指向的元素
  • 10.1.3 使用反射获取结构体的成员类型
  • 10.1.4 结构体标签
  • 10.2 反射的值对象
  • 10.2.1 使用反射值对象包装任意值
  • 10.2.2 从反射值对象获取被包装的值
  • 10.2.3 使用反射访问结构体的成员字段的值
  • 10.2.4 反射对象的空和有效性判断
  • 10.2.5 使用反射值对象修改变量的值
  • 10.2.6 通过类型创建类型
  • 10.2.7 使用反射调用函数
  • 10.3 反射的规则
  • 10.3.1 反射API
  • 10.3.2 反射三定律
  • 10.4 inject库
  • 10.4.1 依赖注入和控制反转
  • 10.4.2 inject
  • 10.4.3 inject的原理分析
  • 10.5 反射的优点和缺点
  • 10.6 就业面试技巧与解析
  • 10.6.1 面试技巧与解析(一)
  • 10.6.2 面试技巧与解析(二)
  • 第11章 包
  • 11.1 包的概念
  • 11.1.1 什么是包
  • 11.1.2 包的结构
  • 11.1.3 常用内置包
  • 11.1.4 包的导入
  • 11.1.5 包的使用
  • 11.1.6 Go语言工具箱
  • 11.2 包的工作目录(GOPATH)
  • 11.2.1 如何查看GOPATH
  • 11.2.2 GOPATH的工程结构
  • 11.2.3 设置和使用GOPATH
  • 11.2.4 在多项目工程中使用GOPATH
  • 11.3 创建包
  • 11.4 导出标识符
  • 11.4.1 导出包内标识符
  • 11.4.2 导出结构体及接口成员
  • 11.5 自定义包
  • 11.5.1 包的制作
  • 11.5.2 特定平台的代码
  • 11.5.3 godoc生成文档
  • 11.5.4 包的打包与发布
  • 11.5.5 自定义包的导入
  • 11.6 sync包与锁
  • 11.6.1 互斥锁
  • 11.6.2 读写锁
  • 11.7 就业面试技巧与解析
  • 11.7.1 面试技巧与解析(一)
  • 11.7.2 面试技巧与解析(二)
  • 第4篇 项目实践
  • 第12章 网络编程
  • 12.1 Socket编程
  • 12.1.1 什么是Socket
  • 12.1.2 Dial()函数
  • 12.1.3 TCP Socket
  • 12.1.4 UDP Socket
  • 12.2 HTTP编程
  • 12.2.1 HTTP客户端
  • 12.2.2 HTTP服务器端
  • 12.3 数据库
  • 12.3.1 database/sql接口
  • 12.3.2 使用MySQL数据库
  • 12.3.3 使用SQLite数据库
  • 12.3.4 使用PostgreSQL数据库
  • 12.3.5 NoSQL数据库操作
  • 12.4 Cookie
  • 12.4.1 设置Cookie
  • 12.4.2 读取Cookie
  • 12.5 就业面试技巧与解析
  • 12.5.1 面试技巧与解析(一)
  • 12.5.2 面试技巧与解析(二)
  • 第13章 Go语言的文件处理
  • 13.1 文件操作
  • 13.1.1 创建文件与查看状态
  • 13.1.2 重命名与移动
  • 13.1.3 打开与关闭
  • 13.1.4 删除与截断
  • 13.1.5 读写文件
  • 13.1.6 权限控制
  • 13.1.7 文件链接
  • 13.2 XML文件处理
  • 13.2.1 解析XML
  • 13.2.2 生成XML
  • 13.2.3 XML文件的读写操作
  • 13.3 JSON文件处理
  • 13.3.1 解析JSON
  • 13.3.2 生成JSON
  • 13.3.3 JSON文件的读写操作
  • 13.4 日志记录
  • 13.4.1 Logrus
  • 13.4.2 Seelog
  • 13.5 压缩
  • 13.5.1 打包与压缩
  • 13.5.2 压缩与解压
  • 13.6 就业面试技巧与解析
  • 13.6.1 面试技巧与解析(一)
  • 13.6.2 面试技巧与解析(二)
  • 第14章 编译与工具
  • 14.1 编译
  • 14.1.1 go build无参数编译
  • 14.1.2 go build+文件列表
  • 14.1.3 go build+包
  • 14.1.4 go build编译时的附加参数
  • 14.2 编译后运行
  • 14.3 编译并安装
  • 14.4 清除编译文件
  • 14.5 格式化代码文件
  • 14.6 一键获取代码、编译并安装
  • 14.6.1 远程包的路径格式
  • 14.6.2 go get+远程包
  • 14.6.3 go get使用时的附加参数
  • 14.7 编译前自动化生成代码
  • 14.8 测试
  • 14.8.1 单元测试
  • 14.8.2 基准测试
  • 14.9 性能分析
  • 14.9.1 安装图形化显示分析数据工具
  • 14.9.2 安装第三方性能分析来分析代码包
  • 14.9.3 性能分析
  • 14.10 就业面试技巧与解析
  • 14.10.1 面试技巧与解析(一)
  • 14.10.2 面试技巧与解析(二)
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

清华大学出版社

清华大学出版社成立于1980年6月,是由教育部主管、清华大学主办的综合出版单位。植根于“清华”这座久负盛名的高等学府,秉承清华人“自强不息,厚德载物”的人文精神,清华大学出版社在短短二十多年的时间里,迅速成长起来。清华大学出版社始终坚持弘扬科技文化产业、服务科教兴国战略的出版方向,把出版高等学校教学用书和科技图书作为主要任务,并为促进学术交流、繁荣出版事业设立了多项出版基金,逐渐形成了以出版高水平的教材和学术专著为主的鲜明特色,在教育出版领域树立了强势品牌。