反馈 / 投诉
-
Go语言从入门到项目实战(视频版)
2022-09-08 09:24:09 类别:Go语言
-
扫二维码手机浏览
资源介绍
给网友们整理Go语言相关的 计算机书籍资料,由电子工业出版社出版,作者是刘瑜、萧文翰、董树南,介绍了关于Go语言、Go语言入门、Go语言实战方面,格式为PDF,资源大小12.9 MB,目前在Go语言类资源综合评分为:8.3分。
编辑推荐
1.强大的写作团队
三酷猫系列图书的背后拥有一个强大的写作团队,保障了图书的品质。
本书作者刘瑜老师从事代码开发和系统研究工作20余年,具有雄厚的写作基础和实战经验;萧文翰老师为资深博客专家、专栏作家,拥有丰富的项目实战经验和图书出版经验;董树南老师从事软件开发及研究工作多年,对Go语言Web开发有独到见解。三位老师默契配合,使本书将理论和实践完美地结合在一起!
2.有故事的书
三酷猫的故事始终贯穿着本书内容的始末,为学习增加了乐趣,便于读者更好地吸收重点知识,将理论更好地运用在实践中!
3.从读者角度考虑问题
一本好书值得品味,更能帮助读者解决工作中的实际问题。认真学习完本书的读者,应当可以独立实现Go语言应用开发。
内容简介
Go语言是近几年广受关注的一门新兴编程语言,在设计之初就致力于解决C语言的低效问题,以及C 语言的晦涩、难用等缺陷。Go语言吸收了C、C 强大的开发功能优势,继承了C、C 的编程风格,被广泛应用于构建数字基础设施类软件,以及图形/图像处理、移动应用、人工智能、机器学习等领域,广受国内外大型IT公司的推崇和关注。 本书除了讲解Go语言的基本开发知识,还提供了3个完整的实战项目及131个源码示例。另外,本书提供对应的练习与实验,方便读者对所学知识进行巩固和检验。 本书适合高等院校学生阅读,适合程序员自学,也适合培训机构使用。
目录
- 第1部分 Go语言编程基础
- 第1章 Go语言入门知识 2
- 1.1 Go语言简介 2
- 1.1.1 Go语言的产生 2
- 1.1.2 Go语言的特点与优势 3
- 1.2 Go语言开发工具的安装 5
- 1.2.1 Windows下的安装 6
- 1.2.2 Linux下的安装 10
- 1.2.3 macOS下的安装 13
- 1.3 第一个Go语言程序:Hello三酷猫 13
- 1.4 安装和使用集成开发环境 16
- 1.4.1 集成开发环境的安装 16
- 1.4.2 项目的创建、编译和运行 19
- 1.4.3 代码的出错提示及调试 22
- 1.4.4 代码风格约定 25
- 1.5 关键字和保留字 26
- 1.6 为代码添加注释 27
- 1.6.1 单行注释 27
- 1.6.2 多行注释 28
- 1.7 练习与实验 29
- 第2章 基础语法 30
- 2.1 声明 30
- 2.2 常量与变量 30
- 2.2.1 常量 31
- 2.2.2 变量 32
- 2.2.3 作用域 33
- 2.3 基本数据类型 34
- 2.3.1 整型 34
- 2.3.2 浮点型 36
- 2.3.3 复数型 38
- 2.3.4 布尔型 39
- 2.3.5 字符串型 39
- 2.4 运算符及优先级 42
- 2.4.1 算术运算符 42
- 2.4.2 关系运算符 43
- 2.4.3 逻辑运算符 44
- 2.4.4 位运算符 45
- 2.4.5 赋值运算符 47
- 2.4.6 指针运算符 49
- 2.4.7 优先级 49
- 2.4.8 案例:三酷猫求相加和 50
- 2.5 练习与实验 52
- 第3章 高级数据类型 53
- 3.1 指针类型 53
- 3.1.1 指针的概念 54
- 3.1.2 指针变量的声明 54
- 3.1.3 指针变量的赋值 55
- 3.1.4 访问指针变量所表示的变量的值 55
- 3.1.5 空(nil)指针 56
- 3.1.6 指向指针的指针变量 56
- 3.1.7 案例:解答三酷猫关于指针的困惑 57
- 3.2 数组类型 58
- 3.2.1 数组的概念 59
- 3.2.2 数组的声明与初始化 59
- 3.2.3 访问数组中的元素 62
- 3.2.4 多维数组 62
- 3.2.5 案例:三酷猫计算平均温度 63
- 3.3 切片类型 65
- 3.3.1 切片的概念 65
- 3.3.2 切片的声明与初始化 65
- 3.3.3 空(nil)切片 68
- 3.3.4 访问切片中的元素 68
- 3.3.5 多维切片 69
- 3.3.6 切片的append()函数 69
- 3.3.7 切片的copy()函数 72
- 3.4 集合类型 73
- 3.4.1 集合的概念 73
- 3.4.2 集合的声明与初始化 73
- 3.4.3 集合中元素的检索 75
- 3.4.4 向集合中添加、删除和修改元素 76
- 3.5 结构体类型 77
- 3.5.1 结构体的概念及特点 77
- 3.5.2 结构体的声明 77
- 3.5.3 结构体的使用 78
- 3.6 练习与实验 80
- 第4章 流程控制语法 81
- 4.1 分支结构 81
- 4.1.1 if语句 81
- 4.1.2 if…else…结构 83
- 4.1.3 多分支结构 83
- 4.2 switch…case…分支结构 84
- 4.3 循环结构 86
- 4.3.1 for循环的使用 86
- 4.3.2 多层循环结构 89
- 4.4 跳转控制语句 90
- 4.4.1 break语句 90
- 4.4.2 continue语句 91
- 4.4.3 goto语句 92
- 4.5 for-range结构 93
- 4.5.1 遍历数组与切片 93
- 4.5.2 遍历集合 94
- 4.5.3 遍历字符串 94
- 4.6 案例:三酷猫背九九乘法表 95
- 4.7 案例:三酷猫学算法之冒泡排序 95
- 4.8 练习与实验 96
- 第5章 函数 98
- 5.1 函数的声明 98
- 5.1.1 函数的声明格式 99
- 5.1.2 函数的参数 99
- 5.1.3 可变参数 101
- 5.1.4 函数的返回值 102
- 5.2 函数的调用 103
- 5.2.1 函数的调用格式 103
- 5.2.2 值传递与引用传递 104
- 5.2.3 案例:三酷猫识别数据类型 105
- 5.3 递归函数 106
- 5.4 匿名函数 107
- 5.4.1 匿名函数的声明 107
- 5.4.2 匿名函数的调用 108
- 5.4.3 将匿名函数赋值给变量 108
- 5.4.4 使用匿名函数实现回调 108
- 5.4.5 案例:三酷猫的下载“神器” 109
- 5.5 闭包 110
- 5.6 函数的延迟调用 112
- 5.6.1 延迟调用的使用和特点 112
- 5.6.2 使用延迟调用的注意事项 113
- 5.7 Go语言的异常处理 115
- 5.7.1 运行时宕机 116
- 5.7.2 宕机时恢复 117
- 5.8 案例:三酷猫的面积计算器 118
- 5.9 练习与实验 119
- 第6章 结构体 120
- 6.1 类型 120
- 6.1.1 自定义类型 121
- 6.1.2 自定义别名 121
- 6.2 结构体的基本使用 122
- 6.2.1 结构体的声明及实例化 122
- 6.2.2 匿名结构体 125
- 6.2.3 内存中的结构体变量 126
- 6.2.4 声明并实例化指针类型的结构体变量 127
- 6.3 构造函数与方法 128
- 6.3.1 使用结构体实现构造函数 128
- 6.3.2 方法与接收者 130
- 6.4 结构体的嵌套 133
- 6.4.1 嵌套结构体 133
- 6.4.2 嵌套匿名结构体 134
- 6.4.3 使用结构体实现继承 135
- 6.5 案例:三酷猫开银行 136
- 6.6 练习与实验 138
- 第7章 接口 140
- 7.1 接口概述 140
- 7.2 接口的定义和使用 141
- 7.2.1 接口的定义 141
- 7.2.2 接口的实现 142
- 7.2.3 调用接口方法 145
- 7.2.4 值接收者与指针接收者 146
- 7.2.5 实现多个接口 147
- 7.2.6 接口的嵌套 149
- 7.3 空接口的定义和使用 150
- 7.3.1 空接口的定义 150
- 7.3.2 空接口的使用 151
- 7.4 类型断言 152
- 7.5 练习与实验 153
- 第8章 包 154
- 8.1 包的声明与导入 154
- 8.1.1 包的声明 154
- 8.1.2 包的导入 155
- 8.2 Go应用程序的启动流程 159
- 8.3 创建包 160
- 8.4 Go语言中的常用内置包 161
- 8.4.1 文本格式化输出:fmt包 162
- 8.4.2 磁盘文件读/写:os包 171
- 8.4.3 网络服务:net包 180
- 8.4.4 JSON格式工具包:json包 185
- 8.4.5 时间和日期:time包 188
- 8.4.6 日志服务:log包 192
- 8.4.7 类型转换:strconv包 195
- 8.5 案例:三酷猫的文件夹递归复制工具 199
- 8.6 案例:三酷猫的二维码图片生成器 201
- 8.7 练习与实验 202
- 第9章 并发、并行与协程 204
- 9.1 概念 204
- 9.1.1 进程与线程 204
- 9.1.2 并发与并行 205
- 9.1.3 协程与线程 205
- 9.2 Go语言协程:Goroutine 205
- 9.2.1 使用Goroutine的优势 205
- 9.2.2 创建并启动单个Goroutine 206
- 9.2.3 创建并启动多个Goroutine 209
- 9.3 Go语言调度模型:GPM 210
- 9.3.1 任务调度发展简史 210
- 9.3.2 Go语言中的协程 211
- 9.3.3 GPM设计思想 211
- 9.4 runtime包 213
- 9.4.1 获取当前的操作系统类型和CPU类型 213
- 9.4.2 获取和设置CPU核心数量 214
- 9.4.3 让出资源 215
- 9.4.4 终止当前协程 216
- 9.5 在协程任务之间传递数据:Channel 216
- 9.5.1 通道类型和基本使用 217
- 9.5.2 无缓冲(同步)通道的使用 218
- 9.5.3 带缓冲通道的使用 219
- 9.5.4 判断通道是否关闭 220
- 9.5.5 单向通道的构建 221
- 9.6 select结构 221
- 9.7 加锁和原子操作 223
- 9.7.1 互斥锁 224
- 9.7.2 读/写互斥锁 224
- 9.7.3 原子操作 226
- 9.8 定时器 228
- 9.8.1 Timer 228
- 9.8.2 Ticker 230
- 9.9 案例:三酷猫筛选0~1000范围内的素数 230
- 9.10 练习与实验 232
- 第10章 反射 234
- 10.1 使用反射访问变量 234
- 10.1.1 获取变量的类型 235
- 10.1.2 获取变量的值 236
- 10.1.3 反射值的非空和有效性判定 237
- 10.2 使用反射访问指针表示的变量 237
- 10.3 使用反射访问结构体 238
- 10.4 使用反射修改值 240
- 10.5 使用反射调用函数 243
- 10.6 使用反射创建变量 244
- 10.7 练习与实验 244
- 第11章 命令行工具 246
- 11.1 编译命令go build 246
- 11.2 清理命令go clean 247
- 11.3 运行命令go run 248
- 11.4 代码格式化命令gofmt 249
- 11.5 编译并安装命令go install 250
- 11.6 获取包命令go get 250
- 11.7 练习与实验 251
- 第12章 数据库操作 252
- 12.1 MySQL 252
- 12.1.1 MySQL准备 253
- 12.1.2 增删改查(CRUD)操作 259
- 12.1.3 事务(Transaction)操作 262
- 12.2 Redis 263
- 12.2.1 Redis准备 264
- 12.2.2 Redis数据类型 267
- 12.2.3 使用Go语言对Redis进行操作 268
- 12.3 练习与实验 271
- 第2部分 Go语言项目实战
- 第13章 开发矩阵计算库 274
- 13.1 线性代数基础与项目功能设计 274
- 13.1.1 线性代数知识的简单回顾 274
- 13.1.2 项目功能设计 276
- 13.2 项目初始化与“鸭子类型” 277
- 13.2.1 初始化项目 277
- 13.2.2 定义matrix包的数据类型 278
- 13.2.3 面向对象与Go语言中的“鸭子类型” 278
- 13.3 矩阵计算包matrix的开发 281
- 13.3.1 定义matrix包中的接口 281
- 13.3.2 实现matrix包中的方法 282
- 13.3.3 测试matrix包 288
- 13.3.4 在其他项目中引用matrix包 292
- 13.4 项目总结 294
- 第14章 STL文件解析和MongoDB存储 295
- 14.1 STL文件简介与项目设计 295
- 14.1.1 项目功能需求设定 298
- 14.1.2 项目实现思路 299
- 14.2 开发utils包 299
- 14.2.1 错误处理文件handle.go 300
- 14.2.2 文件操作文件fileoper.go 301
- 14.3 开发用于模型文件处理的stl包 302
- 14.3.1 定义数据类型:type.go文件 303
- 14.3.2 解析STL文件数据:stl.go文件 304
- 14.3.3 安装和配置MongoDB 307
- 14.3.4 操作数据库:db.go文件 310
- 14.4 开发路由函数的handler包 314
- 14.4.1 定义响应数据格式类型的type.go文件 314
- 14.4.2 用于测试服务器程序连通性的ping.go文件 315
- 14.4.3 处理STL数据请求的stl.go文件 316
- 14.5 开发项目入口文件main.go并测试项目 321
- 14.5.1 开发main.go文件 322
- 14.5.2 使用Postman测试整个项目 324
以上就是本次关于书籍资源的介绍和部分内容,我们还整理了以往更新的其它相关电子书资源内容,可以在下方直接下载,关于相关的资源我们在下方做了关联展示,需要的朋友们也可以参考下。
- 上一篇:实战Java高并发程序设计(第3版)
- 下一篇:15天快速上手Python
获取赠书
Go语言相关资源
-
Go语言Web编程 编程资源
4.6 MB更新:2022-03-15
Go语言性能好、语法简单、开发效率高!一起来探索Go 语言吧! 本教程特别适合从事PHP/Python/Ruby/Node.js等Web开发的读者,通过本书可以了解编译型语言怎么写Web应用开发,系统底层怎么进行网络通信。 还适合从事C/C++/Java等系统级别开发的读者,通过本书可以了解到Web开发的一些知识,例如,如何处理表单,如何进行用户认证以及Session/Cookie等各方面的Web应用。 内容涵盖文本处理、表单处理、Session管理、数据库交互、加/解密、国际化和标准化,以及程序
-
go语言中文教程及手册 编程资源
1.89 MB更新:2021-01-20
Go 编程语言是一个使得程序员更加有效率的开源项目。Go 是有表达力、简洁、清晰和有效率的。它的并行机制使其很容易编写多核和网络应用,而新ᓆ的类型系统允许构建有ᧄ性的模块化程序。Go编译到机器码非常快速,同时具有便利的垃圾回收和强大的运行时反射。它是快速的、静态类型编译语言,但是感觉上是动态类型的,解释型语言。 《go语言中文教程及手册》包含了语言结构、基础语法、数据类型、语言变量、语言常量以及运算符等内容的介绍
-
Go语言高级开发与实战 计算机书籍
95.1 MB更新:2022-09-05
编辑推荐 Go语言高级开发与实战聚焦Go语言的高级开发技巧和应用实战。高级进阶、重点解析Go语言高级开发知识;源码再用,随书源码可直接二次开发进行实战部署。作者廖显东,高级软件架构师,全栈开发者,技术极客,Gopher,开源爱好者。对Go、Rust等流行开发语言有深入实践和研究。对大型电子商务系统开发、高并发架构、分布式架构、微服务、大数据、人工智能算法等领域有深入实践和研究。建议采用以线上销售为主、线上线下相结合的营销方式
-
go语言入门:新手参考 编程资源
2.6 MB更新:2020-10-08
go命令和常用工具 go install:编译并把编译好的结果移到$GOPATH/pkg或者$GOPATH/bin go build :编译(项目和文件) 常用参数: -o 指定输出的文件名,可以带上路径,例如 go build -o out main.go -i 安装相应的包,编译+go install -v 打印出来我们正在编译的包名 go get:安装第三方包 常用命令: -d 只下载不安装 -u 强制使用网络去更新包和它的依赖包 -v 显示执行的命令 go clean:移除当前源码包和关联源码包里
-
《Go语言项目开发上手指南》源代码
2.95 MB更新:2021-12-12
《 Go语言项目开发上手指南 》从实践出发讲解Go语言编程的基础和进阶知识。全书共分为14章,第1~4章讲述Go的基础知识,如基础语法、内置库的使用等,第5~14章介绍编写图表库、实现命令行工具、网络爬虫Web编程、GraphQL编程和面向接口编程等,将Go的核心知识和应用拆分到不同的应用场景中进行讲解。 本书适合对Go语言的应用已经有一定基础,并希望能够在Web开发方面、接口编程方面结合Go语言来实现进阶学习的技术人员学习和参考。 封面图 目录 前言
-
Go语言定制指南 计算机书籍
40.5 MB更新:2022-04-08
Go语言程序设计与实现教程,Go语言编程实战自学,剖析Go语言底层运行机制,学习编译器原理,提升编程技艺,提高编写效率,附赠源代码 编辑推荐 1.深入浅出,接触核心 理解Go语言语法树的工作原理,提升编程技艺,学习编译器的原理与实现,编写更效率的代码;通过理解简单的凹语言,深刻理解Go语言特性,获得自制一门编程语言的启发。 2.内容针对性与专业性强 本书面向已经熟练掌握Go语言并在进行项目开发的程序员,也适合想深入了解Go语言底
-
Go语言精进之路:从新手到高手的编程思想、方法和技巧 计算机书籍
51.2 MB更新:2022-09-04
内容简介 Go入门容易,精进难,如何才能像Go开发团队那样写出符合Go思维和语言惯例的高质量代码呢? 本书将从编程思维和实践技巧2个维度给出答案,帮助你在Go进阶的路上事半功倍。 编程思维层面 只有真正领悟了一门语言的设计哲学和编程思维,并能将之用于实践,才算精通了这门语言。本书从Go语言设计者的视角对Go背后的设计哲学和编程思想进行了梳理和分析,指引读者体会那些看似随意实则经过深思熟虑的设计背后的秘密。 实践技巧层面 实践
留言评论
欢迎发表评论:
- 最新更新
-
1
《基于Verilog HDL的FPGA设计与工程应用》源代码
类别:Verilog HDL
-
2
新手学电脑从入门到精通 计算机书籍
类别:新手学电脑
-
3
Spring Boot编程思想(核心篇) PDF电子书
类别:Spring Boot
-
4
人人都是产品经理2.0 PDF电子书
类别:电子商务
-
5
iOS移动开发从入门到精通 PDF电子书
类别:iOS
-
6
Python从小白到大牛 PDF电子书
类别:python
-
7
概率机器人 PDF电子书
类别:AI机器人
-
8
云原生分布式存储基石:etcd深入解析 PDF电子书
类别:etcd
-
9
Netty进阶之路:跟着案例学Netty PDF电子书
类别:Netty
- 资料推荐
-
- 02-15实战Java高并发程序设计 计算机书籍
- 05-17数学实验(第2版) 课后答案
- 06-13Java从小白到大牛(含源码) PDF电子书
- 09-06深入理解Java核心技术:写给Java工程师的干货笔记(基础篇) 计算机书籍
- 05-28《Kotlin入门与实战》源码
- 12-30《ASP网络应用程序设计(第2版)》教案,源代码
- 07-19算法设计与分析 课后答案
- 08-01数字滤波器的MATLAB与FPGA实现:Altera/Verilog PDF电子书
- 11-05电子商务运营实务 计算机书籍
- 01-10CAD/CAE/CFD/VPT/SC软件协作技术 PDF电子书