全新正版 急速发货
¥ 41.4 4.6折 ¥ 89.8 全新
库存45件
作者明日科技
出版社清华大学出版社
ISBN9787302651659
出版时间2024-03
装帧平装
开本16开
定价89.8元
货号29712220
上书时间2024-11-25
丛书说明:“软件开发视频大讲堂”丛书第1版于2008年8月出版,因其编写细腻、易学实用、配备海量学习资源和全程视频等,在软件开发类图书市场上产生了很大反响,绝大部分品种在全国软件开发零售图书排行榜中名列前茅,2009年多个品种被评为“全国优秀畅销书”。
“软件开发视频大讲堂”丛书第2版于2010年8月出版,第3版于2012年8月出版,第4版于2016年10月出版,第5版于2019年3月出版,第6版于2021年7月出版。十五年间反复锤炼,打造经典。丛书迄今累计重印680多次,销售400多万册,不仅深受广大程序员的喜爱,还被百余所高校选为计算机、软件等相关专业的教学参考用书。
“软件开发视频大讲堂”丛书第7版在继承前6版所有优点的基础上,进行了大幅度的修订。第一,根据当前的技术趋势与热点需求调整品种,拓宽了程序员岗位就业技能用书;第二,对图书内容进行了深度更新、优化,如优化了内容布置,弥补了讲解疏漏,将开发环境和工具更新为新版本,增加了对新技术点的剖析,将项目替换为更能体现当今IT开发现状的热门项目等,使其更与时俱进,更适合读者学习;第三,改进了教学微课视频,为读者提供更好的学习体验;第四,升级了开发资源库,提供了程序员“入门学习→技巧掌握→实例训练→项目开发→求职面试”等各阶段的海量学习资源;第五,为了方便教学,制作了全新的教学课件PPT。
虽然编程语言众多,但却各有各的擅长。有些编程语言虽然执行效率高,但是开发和编译效率低,如C ;还有些编程语言虽然执行效率低,但是开发和编译效率高,如Java。那么,有没有一种语言既有很高的执行效率,又有很高的开发和编译效率呢?有,那就是Go语言。由于Go语言的创始人认为Go语言的运行速度、开发速度和学习速度都像挖洞速度特别快的囊地鼠,因此,Go语言的吉祥物就是囊地鼠。随着Go语言的不断发展和更新,Go语言可以应用于区块链开发、后台服务、云计算/云服务后台、分布式系统、网络编程等领域。
本书内容
本书提供了Go语言从入门到编程高手所需要的各类知识,共分为4篇。
第1篇:基础知识。本篇介绍了初识Go语言、Go语言基础、Go语言基本数据类型与运算符、流程控制、复合数据类型等入门知识,结合大量的图示、实例、视频等,读者可快速掌握Go语言开发基础,为深入学习Go语言奠定根基。
第2篇:进阶提高。本篇介绍了函数、指针、结构体、接口、错误处理、并发编程等Go语言进阶知识,学习完本篇内容,读者将能够熟练地编写Go语言程序。
第3篇:高级应用。本篇介绍了包管理、标准库、编译与测试工具、反射、MySQL数据库编程、文件处理、网络编程等Go语言核心知识。学习完本篇内容,读者将能够开发小型的Go应用项目。
第4篇:项目实战。本书最后将运用go-colly框架编写一个爬虫项目,引领读者真实体验Go语言项目开发的全过程,提升实际开发能力。
本书特点
由浅入深,循序渐进。本书以零基础入门读者和初、中级程序员为对象,先从Go语言基础语法知识学起,再学习Go语言中非常重要的接口、并发编程、包管理、标准库、编译与调试、反射、数据库编程、网络编程等进阶和高级应用技术,最后运用go-colly框架编写一个爬虫项目。本书知识讲解由浅入深,全面详尽,掌握书中内容,读者就能够读懂Go代码,写出符合Go语言思维和惯例的高质量代码,并能够设计出Go项目。
微课视频,讲解详尽。为便于读者直观感受Go程序开发的全过程,书中重要章节配备了教学微课视频(共100集,时长8小时),使用手机扫描章节标题一侧的二维码,即可观看学习。这些同步教学视频可为读者扫除学习障碍,使大家体验Go语言的强大,感受编程的快乐,增强深入学习的信心。
基础知识 应用实例 项目实战,实战为王。通过例子学习是最好的学习方式,本书核心知识的讲解通过“一个知识点、一个示例、一个结果、一段评析”的模式,详尽透彻地讲述实际开发中所需的各类知识。全书共计98个应用实例,并附有一个爬虫实战项目,为初学者打造“边学边练、杜绝枯燥”的强化实战学习环境,使读者能真正掌握Go语言开发技术。
精彩栏目,贴心提醒。本书精心设计了“注意”“说明”等提示栏目,通过它们,读者可轻松理解Go语言中一些抽象的概念,绕过开发陷阱,掌握各类实用技巧。
读者对象:初、中级程序开发人员;期待进入互联网大厂的开发人员;高等院校软件开发相关专业的师生;培训机构相关就业方向的师生;参加实习的“菜鸟”级程序员;做毕业设计的学生。
本书学习资源
本书提供了大量的辅助学习资源,读者需刮开图书封底的防盗码,扫描并绑定微信后,获取学习权限。
学习书中知识时,扫描章节名称处的二维码,可在线观看教学视频。
关注清大文森学堂公众号,可获取本书的电子教案、PPT课件、视频等资源,加入本书的学习交流群,参加图书直播答疑。
读者扫描图书封底的“文泉云盘”二维码,或登录清华大学出版社网站,可在对应图书页面下查阅各类学习资源的获取方式。
致读者
本书由明日科技Go项目开发团队策划并组织编写。明日科技是一家专业从事软件开发、教育培训以及软件开发教育资源整合的高科技公司,其编写的教材既注重选取软件开发中的必需、常用内容,又注重内容的易学、方便以及相关知识的拓展,深受读者喜爱。其编写的教材多次荣获“全行业优秀畅销品种”“中国大学出版社优秀畅销书”等奖项,多个品种长期位居同类图书销售排行榜的前列。
在编写本书的过程中,我们始终本着科学、严谨的态度,力求精益求精,但疏漏之处在所难免,敬请广大读者批评指正。
感谢您购买本书,希望本书能成为您编程路上的领航者。
“零门槛”编程,一切皆有可能。
祝读书快乐!
《Go语言从入门到精通》从初学者角度出发,通过通俗易懂的语言、丰富多彩的实例,详细介绍了Go语言的基础、进阶提高和高级应用知识。全书分为4篇,共19章,包括初识Go语言、Go语言基础、Go语言基本数据类型与运算符、流程控制、复合数据类型、函数、指针、结构体、接口、错误处理、并发编程、包管理、标准库、编译与测试工具、反射、MySQL数据库编程、文件处理、网络编程和Go语言在爬虫中的应用等内容。所有知识都结合具体实例进行讲解,涉及的程序代码给出了详细的注释。全书共计98个应用实例,学练结合,读者可以轻松领会Go语言的开发精髓,快速提升开发技能。
明日科技,全称是吉林省明日科技有限公司,是一家专业从事软件开发、教育培训以及软件开发教育资源整合的高科技公司,其编写的教材非常注重选取软件开发中的必需、常用内容,同时也很注重内容的易学、方便性以及相关知识的拓展性,深受读者喜爱。其教材多次荣获“全行业优秀畅销品种”“全国高校出版社优秀畅销书”等奖项,多个品种长期位居同类图书销售排行榜的前列。
第1篇 基础知识
第1章 初识Go语言 2
视频讲解:24分钟
1.1 Go语言简介 2
1.1.1 为什么要学习Go语言 2
1.1.2 Go语言的特性 3
1.1.3 Go语言与并发 3
1.1.4 Go语言的应用 4
1.2 Go语言开发环境 4
1.2.1 下载Go语言开发包 4
1.2.2 安装Go语言开发包 6
1.2.3 配置Go语言环境变量 8
1.2.4 测试Go语言开发包是否正常运行 11
1.3 Go语言开发工具 11
1.3.1 下载VS Code 12
1.3.2 安装VS Code 13
1.3.3 汉化VS Code 15
1.3.4 在VS Code中安装Go语言插件 16
1.4 第一个Go语言程序 18
1.4.1 创建Go项目和Go文件 18
1.4.2 编写第一个Go语言程序 24
1.4.3 运行Go语言程序 24
1.5 要点回顾 27
第2章 Go语言基础 28
视频讲解:17分钟
2.1 关键字和标识符 28
2.1.1 关键字 28
2.1.2 标识符命名规则 29
2.1.3 空白标识符 30
2.1.4 导出标识符 30
2.1.5 预定义标识符 32
2.2 程序的基本结构 32
2.3 作用域 33
2.4 注释 34
2.5 要点回顾 34
第3章 Go语言基本数据类型与运算符 35
视频讲解:36分钟
3.1 Go语言变量 35
3.1.1 变量的声明 35
3.1.2 变量的初始化 37
3.1.3 匿名变量 39
3.1.4 变量的作用域 39
3.2 基础类型 41
3.2.1 数值类型 41
3.2.2 布尔类型 42
3.2.3 字符串类型及其操作 43
3.3 类型转换 48
3.4 自定义类型 50
3.5 有类型的常量 51
3.6 枚举 52
3.7 运算符 53
3.7.1 算术运算符 53
3.7.2 关系运算符 53
3.7.3 逻辑运算符 54
3.7.4 位运算符 54
3.7.5 复合赋值运算符 55
3.7.6 运算符优先级 57
3.8 要点回顾 58
第4章 流程控制 59
视频讲解:28分钟
4.1 条件判断语句 59
4.1.1 if语句 59
4.1.2 switch语句 64
4.2 循环语句 68
4.2.1 for循环 68
4.2.2 for-range循环 71
4.2.3 循环嵌套 73
4.3 循环控制语句 74
4.3.1 break语句 74
4.3.2 continue语句 75
4.3.3 goto语句 77
4.4 要点回顾 77
第5章 复合数据类型 78
视频讲解:38分钟
5.1 数组 78
5.1.1 数组的声明 78
5.1.2 数组的初始化 79
5.1.3 数组元素的访问 81
5.1.4 二维数组 82
5.2 切片 84
5.2.1 定义切片 85
5.2.2 len()函数和cap()函数 86
5.2.3 append()函数 87
5.2.4 copy()函数 88
5.2.5 空切片 89
5.2.6 切片的访问 89
5.2.7 删除切片 90
5.3 映射 91
5.3.1 定义映射 91
5.3.2 遍历映射 93
5.3.3 获取映射元素 94
5.3.4 删除映射元素 94
5.4 要点回顾 95
第2篇 进阶提高
第6章 函数 98
视频讲解:46分钟
6.1 函数定义和调用 98
6.1.1 函数的定义 98
6.1.2 函数的调用 99
6.2 函数的参数 100
6.2.1 形式参数和实际参数 100
6.2.2 值传递和引用传递 102
6.2.3 可变参数 103
6.2.4 传递数组 104
6.2.5 传递切片 105
6.3 函数的返回值 105
6.3.1 返回单个值 105
6.3.2 返回多个值 107
6.4 函数的嵌套调用 109
6.5 函数变量 110
6.6 匿名函数 111
6.6.1 在定义时直接调用 112
6.6.2 将匿名函数赋值给变量 112
6.6.3 作为回调函数 113
6.7 闭包 114
6.8 递归函数 115
6.9 函数的延迟调用 117
6.9.1 多个defer语句的执行顺序 117
6.9.2 延迟函数的参数 117
6.9.3 匿名函数的延迟调用 118
6.10 要点回顾 120
第7章 指针 121
视频讲解:20分钟
7.1 关于指针 121
7.1.1 什么是指针 121
7.1.2 “取地址”操作 122
7.2 指针的使用方法 123
7.2.1 声明指针变量 123
7.2.2 初始化指针变量 123
7.2.3 空指针 125
7.2.4 获取指针指向的变量的值 126
7.2.5 修改指针指向的变量的值 127
7.3 指针的其他应用 129
7.3.1 指针数组 129
7.3.2 指向指针的指针变量 130
7.4 要点回顾 131
第8章 结构体 132
视频讲解:26分钟
8.1 结构体基本用法 132
8.1.1 定义结构体 132
8.1.2 实例化结构体 133
8.2 匿名成员和匿名结构体 135
8.2.1 匿名成员 135
8.2.2 匿名结构体 136
8.3 结构体的嵌套 137
8.4 构造函数 141
8.4.1 不带参数的构造函数 141
8.4.2 带参数的构造函数 142
8.4.3 为嵌套的结构体使用构造函数 142
8.5 方法 143
8.5.1 值接收者方法 143
8.5.2 指针接收者方法 144
8.6 要点回顾 147
第9章 接口 148
视频讲解:27分钟
9.1 接口的声明 148
9.2 接口的实现 149
9.3 类型断言 150
9.4 Interface接口 152
9.5 空接口类型 155
9.5.1 使用空接口保存值 155
9.5.2 从空接口中获取值 157
9.5.3 比较空接口保存的值 158
9.6 类型分支 159
9.7 接口的嵌套 160
9.8 要点回顾 162
第10章 错误处理 163
视频讲解:22分钟
10.1 error接口类型 163
10.2 自定义错误信息 164
10.2.1 使用errors包中的New函数 164
10.2.2 使用error接口自定义Error()函数 165
10.2.3 使用fmt包的Errorf()函数 166
10.3 Error嵌套 168
10.3.1 基本用法 168
10.3.2 Unwrap()函数 168
10.3.3 Is()函数 169
10.3.4 As()函数 169
10.4 宕机和宕机恢复 170
10.4.1 宕机(panic) 170
10.4.2 宕机恢复(recover) 172
10.5 要点回顾 174
第11章 并发编程 175
视频讲解:31分钟
11.1 并发概述 175
11.2 goroutine 176
11.2.1 为普通函数创建goroutine 176
11.2.2 为匿名函数创建goroutine 179
11.3 channel(通道) 180
11.3.1 通道的声明和创建 181
11.3.2 通道的基本操作 182
11.3.3 单向通道 184
11.3.4 无缓冲的通道 185
11.3.5 有缓冲的通道 186
11.4 使用select处理通道 187
11.5 竞争状态 188
11.6 死锁、活锁和饥饿 189
11.6.1 死锁 189
11.6.2 活锁 190
11.6.3 饥饿 190
11.7 加锁机制 190
11.8 要点回顾 193
第3篇 高级应用
第12章 包管理 196
视频讲解:16分钟
12.1 包的基本概念 196
12.1.1 包的导入 197
12.1.2 包的导入路径 197
12.2 GOPATH 198
12.3 常用内置包 199
12.4 包的基本使用 201
12.4.1 package(创建包) 201
12.4.2 在代码中使用其他代码 202
12.5 自定义包 203
12.6 包管理工具 204
12.7 要点回顾 205
第13章 标准库 206
视频讲解:26分钟
13.1 IO操作 206
13.1.1 io库 206
13.1.2 os库 207
13.1.3 ioutil库 208
13.1.4 bufio库 210
13.1.5 errors库 211
13.2 记录日志 212
13.2.1 log库中的函数 212
13.2.2 标准log配置 213
13.2.3 日志前缀配置 214
13.2.4 把日志输出到文件中 215
13.3 解析JSON 215
13.3.1 解码JSON 215
13.3.2 编码JSON 216
13.4 时间和日期 217
13.4.1 时间的获取 217
13.4.2 操作时间的函数 219
13.4.3 时间格式化 220
13.4.4 解析格式化的时间字符串 220
13.5 要点回顾 221
第14章 编译与测试工具 222
视频讲解:18分钟
14.1 go build命令 222
14.2 go clean命令 224
14.3 go run命令 224
14.4 go fmt命令 225
14.5 go install命令 226
14.6 go get命令 227
14.7 go generate命令 227
14.8 go test命令 228
14.8.1 单元测试 228
14.8.2 基准测试 229
14.9 go pprof命令 230
14.10 要点回顾 230
第15章 反射 231
视频讲解:25分钟
15.1 反射概述 231
15.1.1 reflect.TypeOf()函数 231
15.1.2 reflect.ValueOf()函数 232
15.2 反射三定律 233
15.2.1 接口变量转反射对象 233
15.2.2 反射对象转接口变量 234
15.2.3 修改反射对象的值 235
15.3 反射的类型与种类 237
15.4 Go语言结构体标签 239
15.4.1 结构体标签的使用 239
15.4.2 结构体标签的获取 240
15.5 通过类型信息创建实例 241
15.6 通过反射调用函数 242
15.7 要点回顾 243
第16章 MySQL数据库编程 244
视频讲解:18分钟
16.1 下载、安装MySQL 244
16.1.1 下载MySQL 244
16.1.2 安装MySQL 246
16.1.3 启动MySQL 253
16.2 下载go-mysql驱动程序 253
16.3 操作MySQL数据库 255
16.3.1 连接MySQL数据库 256
16.3.2 新建数据表 257
16.3.3 插入数据 258
16.3.4 查询数据 259
16.3.5 修改数据 261
16.3.6 删除数据 262
16.4 要点回顾 263
第17章 文件处理 264
视频讲解:23分钟
17.1 文本文件的写入、追加、读取操作 264
17.2 二进制文件的写入、读取操作 267
17.2.1 gob格式 267
17.2.2 自定义二进制格式 269
17.3 JSON文件的写入、读取操作 271
17.4 XML文件的写入、读取操作 273
17.5 zip文件的写入、读取操作 275
17.6 文件锁操作 277
17.7 要点回顾 279
第18章 网络编程 280
视频讲解:15分钟
18.1 Socket编程 280
18.1.1 什么是Socket 281
18.1.2 Dial()函数 281
18.2 TCP Socket 282
18.2.1 建立TCP连接 283
18.2.2 实现交互通信 285
18.3 UDP Socket 287
18.3.1 UDP服务器端 287
18.3.2 UDP客户端 288
18.4 HTTP编程 289
18.4.1 HTTP客户端 289
18.4.2 HTTP服务端 290
18.5 要点回顾 291
第4篇 项目实战
第19章 Go语言在爬虫中的应用 294
视频讲解:21分钟
19.1 需求分析 294
19.2 程序设计 294
19.2.1 程序目标 294
19.2.2 功能结构 295
19.2.3 业务
— 没有更多了 —
以下为对购买帮助不大的评价