计算机
类型
可以朗读
语音朗读
355千字
字数
2022-04-01
发行日期
展开全部
主编推荐语
20个动手练习项目,助你轻松掌握GO编程。
内容简介
本书是一本来自一线开发者的Go语言编程入门书,深入浅出地讲述了Go语言的语法特性和编程实践。
全书分为基础和项目两部分。
基础部分主要介绍Go语言开发环境的搭建、基础语法、数据类型、指针、内置容器、函数、结构体、接口、反射、并发编程、包的应用与管理、目录与文件管理、时间管理、数据库编程等。
项目部分主要介绍网页自动化测试程序、网络爬虫程序、网络信息反馈网站的开发实践,此外,还介绍了Go语言程序的编译方法。
本书各章还提供了近20个动手练习小项目,便于读者边学边练,迅速提升编程技能。
本书通俗易懂,体系完备,注重实践,适合对Go语言感兴趣的各层次读者使用。
目录
- 版权信息
- 作者简介
- 内容简介
- 前言
- 第1章 认识Go语言
- 1.1 Go语言简介
- 1.2 Go语言的优势与特性
- 1.3 在Windows下安装Go
- 1.4 在Linux下安装Go
- 1.5 在macOS下安装Go
- 1.6 安装GoLand
- 1.7 搭建GoLand环境
- 1.8 第一个Go程序“Hello World”
- 1.9 动手练习:编程实现人机交互
- 1.10 小结
- 第2章 基础语法
- 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 常量与iota
- 2.3 运算符的使用
- 2.3.1 算术运算符
- 2.3.2 关系运算符
- 2.3.3 赋值运算符
- 2.3.4 逻辑运算符
- 2.3.5 位运算符
- 2.3.6 其他运算符
- 2.3.7 运算符优先级
- 2.4 代码注释
- 2.5 动手练习:编程实现个人健康评测
- 2.6 小结
- 第3章 数据类型
- 3.1 整型的取值范围
- 3.2 浮点类型与精度丢失
- 3.3 复数的计算
- 3.4 布尔型的应用
- 3.5 ASCII与Unicode编码
- 3.6 字符类型
- 3.7 字符串操作
- 3.7.1 字符串与转义符
- 3.7.2 字符串格式化
- 3.7.3 字符串拼接
- 3.7.4 获取字符串长度
- 3.7.5 遍历字符串
- 3.7.6 字符位置与截取
- 3.7.7 字符串分割
- 3.7.8 字符串替换
- 3.8 转换数据类型
- 3.8.1 整型与浮点型
- 3.8.2 整型与字符串
- 3.8.3 浮点型与字符串
- 3.9 动手练习:编程实现在线客服热线
- 3.10 小结
- 第4章 流程控制
- 4.1 if的条件判断
- 4.2 if的多层嵌套
- 4.3 switch的多条件分支
- 4.4 for的循环遍历
- 4.5 for-range获取键值
- 4.6 break越级终止循环
- 4.7 continue跳过本次循环
- 4.8 goto跳到指定代码
- 4.9 动手练习:编程实现简易计算器
- 4.10 小结
- 第5章 指针
- 5.1 指针的概念
- 5.2 指针定义与空指针
- 5.3 指针赋值与取值
- 5.4 切片指针
- 5.5 指针的指针
- 5.6 动手练习:编程实现彩票36选7
- 5.7 小结
- 第6章 内置容器
- 6.1 数组
- 6.1.1 数组定义与操作
- 6.1.2 数组初始化定义
- 6.1.3 多维数组
- 6.2 切片
- 6.2.1 切片定义与操作
- 6.2.2 新增切片元素
- 6.2.3 截取切片元素
- 6.2.4 复制切片
- 6.2.5 切片长度与容量
- 6.3 集合
- 6.3.1 集合定义与操作
- 6.3.2 删除集合元素
- 6.4 动手练习:编程实现集合与JSON互换
- 6.5 列表
- 6.5.1 列表定义
- 6.5.2 列表元素操作
- 6.5.3 遍历列表元素
- 6.6 动手练习:编程实现产品抽样检测
- 6.7 小结
- 第7章 函数
- 7.1 函数定义与调用
- 7.2 不固定参数数量
- 7.3 函数以变量表示
- 7.4 没有名字的函数
- 7.5 引用外部变量的函数
- 7.6 函数自身调用
- 7.7 动手练习:编程实现创建文件后缀名
- 7.8 小结
- 第8章 结构体
- 8.1 Go的“面向对象”
- 8.2 结构体定义与实例化
- 8.3 指针方式的实例化
- 8.4 结构体标签
- 8.5 匿名结构体与匿名成员
- 8.6 结构体嵌套
- 8.7 自定义构造函数
- 8.8 结构体方法:指针与值接收者
- 8.9 动手练习:编程实现结构体与JSON互换
- 8.10 动手练习:编程实现多键索引查询数据
- 8.11 小结
- 第9章 接口
- 9.1 接口定义与使用
- 9.2 鸭子类型
- 9.3 多态与工厂函数
- 9.4 接口的自由组合
- 9.5 任意数据类型的空接口
- 9.6 接口的类型断言
- 9.7 动手练手:编程实现营救村民游戏
- 9.8 小结
- 第10章 反射
- 10.1 什么是反射
- 10.2 第一定律:接口变量转反射变量
- 10.3 第二定律:反射变量转接口变量
- 10.4 第三定律:修改反射变量的值
- 10.5 反射的类型与种类
- 10.6 切片与反射
- 10.7 集合与反射
- 10.8 结构体与反射
- 10.9 指针与反射
- 10.10 函数与反射
- 10.11 动手练习:编程实现对象序列化处理
- 10.12 小结
- 第11章 并发编程
- 11.1 异步的概念
- 11.2 Goroutine
- 11.3 函数创建Goroutine
- 11.4 匿名函数创建Goroutine
- 11.5 通道
- 11.6 无缓冲通道
- 11.7 带缓冲通道
- 11.8 关闭通道读取数据
- 11.9 Select处理多通道
- 11.10 sync同步等待
- 11.11 sync加锁机制
- 11.12 sync.Map的应用
- 11.13 动手练习:编程模拟餐馆经营场景
- 11.14 小结
- 第12章 语法特性
- 12.1 panic触发宕机
- 12.2 defer延时执行
- 12.3 recover宕机时恢复执行
- 12.4 值类型、引用类型与深浅拷贝
- 12.5 类型别名与自定义
- 12.6 new和make的区别
- 12.7 泛型的概念与应用
- 12.8 动手练习:编程实现出租车费用计算
- 12.9 小结
- 第13章 包的应用与管理
- 13.1 常用内置包
- 13.2 包命名与导入
- 13.3 包的重命名
- 13.4 无包名调用
- 13.5 初始化函数init()与空导入
- 13.6 包的自定义与使用
- 13.7 包管理工具go mod
- 13.8 第三方包下载与使用
- 13.9 动手练习:编程实现排序算法
- 13.10 小结
- 第14章 目录与文件处理
- 14.1 使用os实现系统操作
- 14.2 使用path获取路径信息
- 14.3 使用os读写文件
- 14.4 使用io/ioutil读写文件
- 14.5 使用bufio读写文件
- 14.6 使用encoding/csv读写CSV文件
- 14.7 使用encoding/json读写JSON文件
- 14.8 第三方包读写Excel文件
- 14.9 动手练习:编程实现学生管理系统
- 14.10 小结
- 第15章 时间处理
- 15.1 时间戳
- 15.2 结构体Time
- 15.3 字符串格式化
- 15.4 时间类型的相互转换
- 15.5 时间计算操作
- 15.6 延时、超时与定时
- 15.7 动手练习:编程实现个人备忘录
- 15.8 小结
- 第16章 数据库编程
- 16.1 搭建SQLite运行环境
- 16.2 安装与使用MySQL
- 16.3 安装与使用MongoDB
- 16.4 安装与使用Redis
- 16.5 go-sqlite3读写SQLite
- 16.6 go-sql-driver/mysql读写MySQL
- 16.7 mongo-driver读写MongoDB
- 16.8 go-redis读写Redis
- 16.9 ORM框架:Gorm
- 16.10 动手练习:编程实现员工管理系统
- 16.11 小结
- 第17章 Go项目:网页自动化测试程序开发
- 17.1 了解自动化工具Selenium
- 17.2 安装Selenium
- 17.3 使用浏览器查找元素
- 17.4 浏览器配置与启动
- 17.5 网页元素定位
- 17.6 网页元素操作
- 17.7 浏览器常用操作
- 17.8 网页加载等待
- 17.9 iframe与标签页切换
- 17.10 Cookie读写
- 17.11 动手练习:编程实现爬取BOSS直聘招聘数据
- 17.12 小结
- 第18章 Go项目:网络爬虫程序开发
- 18.1 HTTP与HTTPS
- 18.2 请求头
- 18.3 使用浏览器分析网站
- 18.4 使用net/http发送请求
- 18.5 转码与HTML解析
- 18.6 选择数据存储方式
- 18.7 动手练习:编程实现爬取电影TOP100榜单
- 18.8 小结
- 第19章 Go项目:网络编程应用
- 19.1 TCP和UDP的区别
- 19.2 创建TCP应用
- 19.3 创建UDP应用
- 19.4 创建HTTP服务应用
- 19.5 httprouter扩展路由
- 19.6 多种响应处理方式
- 19.7 HTML模板引擎
- 19.8 网站项目:信息反馈平台的开发
- 19.8.1 网站功能需求
- 19.8.2 项目架构设计
- 19.8.3 搭建开发环境
- 19.8.4 定义模型与路由
- 19.8.5 编写模板文件
- 19.8.6 网站运行与测试
- 19.9 小结
- 第20章 编译与运行
- 20.1 run与build的区别
- 20.2 单文件编译
- 20.3 同包多文件编译
- 20.4 不同包多文件编译
- 20.5 编译参数说明
- 20.6 小结
展开全部
出版方
清华大学出版社
清华大学出版社成立于1980年6月,是由教育部主管、清华大学主办的综合出版单位。植根于“清华”这座久负盛名的高等学府,秉承清华人“自强不息,厚德载物”的人文精神,清华大学出版社在短短二十多年的时间里,迅速成长起来。清华大学出版社始终坚持弘扬科技文化产业、服务科教兴国战略的出版方向,把出版高等学校教学用书和科技图书作为主要任务,并为促进学术交流、繁荣出版事业设立了多项出版基金,逐渐形成了以出版高水平的教材和学术专著为主的鲜明特色,在教育出版领域树立了强势品牌。