您好,欢迎光临有路网!
Go语言从入门到项目实战(视频版)
QQ咨询:
有路璐璐:

Go语言从入门到项目实战(视频版)

  • 作者:刘瑜 萧文翰 董树南 著
  • 出版社:电子工业出版社
  • ISBN:9787121439766
  • 出版日期:2022年08月01日
  • 页数:368
  • 定价:¥108.00
  • 分享领佣金
    手机购买
    城市
    店铺名称
    店主联系方式
    店铺售价
    库存
    店铺得分/总交易量
    发布时间
    操作

    新书比价

    网站名称
    书名
    售价
    优惠
    操作

    图书详情

    内容提要
    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

    与描述相符

    100

    北京 天津 河北 山西 内蒙古 辽宁 吉林 黑龙江 上海 江苏 浙江 安徽 福建 江西 山东 河南 湖北 湖南 广东 广西 海南 重庆 四川 贵州 云南 西藏 陕西 甘肃 青海 宁夏 新疆 台湾 香港 澳门 海外