Go语言程序设计PDF电子书下载
- 电子书积分:13 积分如何计算积分?
- 作 者:王鹏编著
- 出 版 社:北京:清华大学出版社
- 出版年份:2014
- ISBN:9787302347231
- 页数:351 页
第1章 Go语言概述 1
1.1 Go语言简介 1
1.1.1 Go语言发展历史 1
1.1.2 Go语言的特点 1
1.2 Go的下载和安装 3
1.2.1 源码安装 3
1.2.2 标准包安装 4
1.2.3 第三方工具安装 10
1.3 Go基本命令及使用 11
1.3.1 Go常用命令 11
1.3.2 Go文档查看命令 12
1.3.3 其他命令 12
1.4 Go集成开发工具 13
1.4.1 LiteIDE 13
1.4.2 SublimeText 2 14
1.5 Go程序结构和设计过程 20
1.5.1 Go程序结构 20
1.5.2 Go程序设计过程 22
1.5.3 Go源程序语法要点 23
1.5.4 Go的注释方式 23
小结 24
习题 25
第2章 Go数据类型、运算符与表达式 26
2.1 常量、变量与命名规则 26
2.1.1 常量 26
2.1.2 变量 27
2.1.3 标识符与命名规则 28
2.2 基本数据类型 29
2.2.1 布尔型数据 29
2.2.2 整型数据 30
2.2.3 浮点型数据 32
2.2.4 复数 34
2.2.5 字节型数据 35
2.2.6 rune类型 36
2.2.7 uintptr类型 37
2.3 运算符与表达式 39
2.3.1 赋值运算符 39
2.3.2 算术运算符 40
2.3.3 关系运算符 41
2.3.4 逻辑运算符 42
2.3.5 位运算符 43
2.3.6 通道运算符 44
2.3.7 运算符的优先级和结合性 44
2.4 字符串 45
2.4.1 字符串定义 45
2.4.2 字符串操作 46
2.4.3 字符串遍历 47
2.5 常量的初始化规则 48
2.5.1 常量的类型 48
2.5.2 常量定义方法 49
2.5.3 常量的初始化规则 50
2.6 枚举 53
2.6.1 枚举类型的定义 53
2.6.2 iota使用规则 54
2.6.3 iota应用举例 54
2.7 变量的定义与声明 56
2.7.1 变量的类型 56
2.7.2 变量的类型零值 56
2.7.3 变量的作用域 58
2.7.4 变量的声明与赋值 59
2.8 类型别名 62
2.8.1 类型别名定义方式 62
2.8.2 中文类型名 62
2.9 类型转换 63
2.9.1 类型转换方法 63
2.9.2 类型兼容性 64
2.9.3 类型转换分类 64
小结 67
习题 68
第3章 Go顺序结构程序设计 70
3.1 顺序结构程序设计和基本语句 70
3.1.1 顺序程序结构 70
3.1.2 简单语句 70
3.1.3 复合语句 72
3.2 Go程序语法注意事项 73
3.2.1 Go程序语句和分号的使用 74
3.2.2 Go程序语句块和左大括号约定 74
3.2.3 注释语句 74
3.3 数据输入输出 74
3.3.1 标准输出函数 75
3.3.2 标准输入函数 82
3.4 Strings包 85
3.4.1 字符串查找函数 85
3.4.2 字符串比较函数 87
3.4.3 字符串位置索引函数 87
3.4.4 字符串追加和替换函数 90
3.5 Strconv包 91
3.5.1 数值转换为字符串函数 91
3.5.2 字符串转换为数值函数 93
3.5.3 Atoi()和Itoa()函数 94
3.6 顺序结构程序举例 95
3.6.1 求平均值 95
3.6.2 计算三角形面积周长 96
3.6.3 求解一元二次方程 97
小结 98
习题 98
第4章 Go选择结构程序设计 100
4.1 if语句 100
4.1.1 if语句的形式 100
4.1.2 if语句的嵌套 104
4.1.3 if语句的注意事项 105
4.2 switch语句 107
4.2.1 switch语句结构 107
4.2.2 switch语句的特殊形式 108
4.2.3 switch语句的注意事项 112
4.3 选择结构程序举例 112
4.3.1 解一元二次方程 112
4.3.2 打印中文日期信息 114
小结 115
习题 115
第5章 Go循环结构程序设计 116
5.1 for语句 116
5.1.1 for基本循环结构 116
5.1.2 for条件循环结构 118
5.1.3 for无限循环结构 119
5.1.4 使用for语句的注意事项 121
5.1.5 for循环嵌套结构 122
5.2 跳转语句 122
5.2.1 break语句 123
5.2.2 continue语句 124
5.2.3 goto语句 126
5.3 for range语句 128
5.4 循环控制程序举例 129
5.4.1 多重循环嵌套应用举例 129
5.4.2 无限循环和跳转语句应用举例 130
5.4.3 for range语句应用举例 132
小结 133
习题 134
第6章 数组、切片和字典 135
6.1 数组 135
6.1.1 数组的声明 135
6.1.2 数组的初始化 136
6.1.3 数组元素的访问和遍历 137
6.1.4 多维数组 139
6.2 切片 140
6.2.1 切片的声明与创建 141
6.2.2 切片元素的访问和遍历 144
6.2.3 切片的操作 144
6.3 字典 146
6.3.1 字典的声明 146
6.3.2 字典的初始化和创建 147
6.3.3 字典的访问和操作 148
6.4 Go语言内存分配机制 150
6.4.1 new函数 150
6.4.2 make函数 151
6.5 字节切片标准库 152
6.5.1 字节切片处理函数 152
6.5.2 Buffer创建函数及操作方法 168
6.5.3 Reader对象及方法 176
6.6 程序举例 181
6.6.1 数组应用 181
6.6.2 Slice应用 182
6.6.3 Map应用 183
小结 184
习题 185
第7章 函数 186
7.1 函数声明 186
7.1.1 函数声明基本格式 186
7.1.2 函数声明举例 187
7.2 函数调用 188
7.2.1 调用标准函数 189
7.2.2 调用自定义函数 189
7.2.3 调用外部包中的函数 191
7.2.4 调用内置函数 192
7.3 参数传递和返回值 192
7.3.1 参数传递 193
7.3.2 返回值 196
7.4 变参函数 198
7.4.1 变参函数的声明 198
7.4.2 变参的传递 199
7.4.3 任意类型的变参 200
7.5 匿名函数与闭包 201
7.5.1 匿名函数 201
7.5.2 闭包 203
7.6 函数的递归调用和defer语句 204
7.6.1 函数的递归调用 204
7.6.2 defer语句 205
7.6.3 异常恢复机制 208
7.7 程序举例 210
7.7.1 函数嵌套调用举例 210
7.7.2 变参函数举例 211
7.7.3 多返回值函数举例 212
小结 213
习题 214
第8章 结构体和方法 215
8.1 结构体的定义 215
8.1.1 结构体定义 215
8.1.2 结构体变量 217
8.1.3 结构体对象 218
8.1.4 结构体对象初始化 220
8.1.5 结构体的赋值和关系操作 221
8.2 嵌入式结构 222
8.2.1 嵌入式结构用作字段 222
8.2.2 嵌入式结构直接定义结构体变量 223
8.2.3 嵌入式结构直接用于Map 224
8.3 匿名字段 225
8.3.1 匿名字段的初始化 226
8.3.2 匿名字段的访问 227
8.3.3 匿名字段的多种形式 228
8.3.4 匿名字段的重名 229
8.3.5 匿名类型指针 231
8.4 方法 231
8.4.1 结构化程序设计思想 231
8.4.2 面向对象程序设计思想 232
8.4.3 Method的基本定义 233
8.4.4 多个Method可以同名 234
8.4.5 指针作为Receiver 235
8.4.6 匿名Receiver 237
8.4.7 Method的继承 237
8.4.8 Method的重写 238
8.5 可见性规则和Struct的导入 239
8.5.1 可见性规则 240
8.5.2 Struct的导入 240
8.6 字段标签 242
8.7 数据I/O对象及操作 243
8.7.1 ReadWriter对象 243
8.7.2 Reader对象 243
8.7.3 Writer对象 249
8.8 应用举例——链表操作 253
8.8.1 链表简介 253
8.8.2 Struct和Method设计单链表 254
小结 257
习题 257
第9章 接口 259
9.1 接口的概念与定义 259
9.1.1 接口的概念 259
9.1.2 接口的定义 259
9.1.3 接口组合 260
9.1.4 空接口 261
9.2 接口执行机制和赋值 261
9.2.1 接口执行机制 261
9.2.2 接口的赋值 262
9.3 匿名字段方法和接口转换 263
9.3.1 匿名字段方法 264
9.3.2 接口转换 265
9.4 接口类型推断 266
9.4.1 Comma-ok断言 266
9.4.2 Switch测试 267
9.5 反射 268
9.5.1 获取原对象的Type和Value值 268
9.5.2 修改原对象Value值 272
9.5.3 动态调用原对象方法 273
9.6 应用举例——二叉树 274
9.6.1 树的定义和基本术语 275
9.6.2 二叉树简介 275
9.6.3 二叉树的链接存储结构 276
9.6.4 二叉树基本应用测试 281
小结 284
习题 284
第10章 Go并发程序设计 286
10.1 程序并发执行概述 286
10.1.1 程序的顺序执行 286
10.1.2 程序的并发执行 287
10.1.3 程序的并行执行 287
10.2 Goroutine 288
10.2.1 操作系统提供的并发基础 288
10.2.2 Goroutine的定义 288
10.2.3 Goroutine的创建 289
10.3 Channel 290
10.3.1 程序间的并发通信 290
10.3.2 Channel简介 290
10.3.3 Channel声明和初始化 291
10.3.4 数据接收和发送 291
10.3.5 Channel的关闭和迭代器 293
10.3.6 单向Channel 294
10.3.7 异步Channel 295
10.4 Select机制和超时机制 297
10.4.1 Select机制 297
10.4.2 超时机制 299
10.5 Runtime Goroutine 300
10.5.1 出让时间片 300
10.5.2 获取CPU核心数和任务数 301
10.5.3 终止当前Goroutine 302
小结 303
习题 303
第11章 Go网络编程 305
11.1 Go网络编程简介 305
11.1.1 计算机网络概念和体系结构 305
11.1.2 网络编程基本概念 307
11.1.3 网络编程模式 311
11.1.4 Socket网络编程接口 313
11.2 Go网络编程基础 314
11.2.1 IP地址和域名解析 314
11.2.2 主机信息查询 318
11.2.3 服务信息查询 320
11.3 Go网络编程原理 322
11.3.1 Socket网络编程 323
11.3.2 Go网络编程 323
11.4 TCP网络程序设计 324
11.4.1 TCPAddr地址结构体 324
11.4.2 TCPConn对象 325
11.4.3 TCP服务器设计 326
11.4.4 TCP客户机设计 328
11.4.5 使用Goroutine实现并发服务器 329
11.5 UDP网络程序设计 331
11.5.1 UDPAddr地址结构体 331
11.5.2 UDPConn对象 331
11.5.3 UDP服务器设计 332
11.5.4 UDP客户机设计 333
11.6 IP网络程序设计 335
11.6.1 IPAddr地址结构体 335
11.6.2 IPConn对象 335
11.6.3 IP服务器设计 336
11.6.4 IP客户机设计 337
11.6.5 Ping程序设计 339
小结 341
习题 342
附录A Go语言内置关键字 343
附录B Go内置函数 344
附录C Go语言标准库 345
附录D 名词与术语索引表 346
参考文献 351
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《设计十六日 国内外美术院校报考攻略》沈海泯著 2018
- 《计算机辅助平面设计》吴轶博主编 2019
- 《高校转型发展系列教材 素描基础与设计》施猛责任编辑;(中国)魏伏一,徐红 2019
- 《景观艺术设计》林春水,马俊 2019
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《高等教育双机械基础课程系列教材 高等学校教材 机械设计课程设计手册 第5版》吴宗泽,罗圣国,高志,李威 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《幼儿园课程资源丛书 幼儿园语言教育资源》周兢编 2015
- 《Cinema 4D电商美工与视觉设计案例教程》樊斌 2019
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019