展开全部

主编推荐语

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 小结
展开全部

评分及书评

评分不足
1个评分

出版方

清华大学出版社

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