书籍详情
Go程序开发实战宝典
作者:猿媛之家 组编 穆旭东 谭庆丰 楚秦 等编著
出版社:机械工业出版社
出版时间:2023-03-01
ISBN:9787111720645
定价:¥109.00
购买这本书可以去
内容简介
《Go程序开发实战宝典》结合典型案例进行知识点讲解,内容通俗易懂、重点突出、实用性强,囊括Go语言的主要功能。全书共14章,前6章主要包括基础数据类型、循环控制、函数和指针、内置容器、字符串处理等;第7章主要讲解Go语言的面向对象编程,主要包括结构体、方法、接口、设计模式、反射等内容;第8~13章主要介绍服务端开发经常需要处理的问题,主要包括Go语言的编写规范、错误处理、异常处理、文件读写操作、JSON编码解码、网络编程、gRPC、并发编程、数据库编程、网络安全和测试等内容。此外,本书还对一些数据类型的底层结构、并发机制、垃圾回收进行了深入的讲解,*后一章通过对Gin框架的介绍和使用,完成了一个基础的分布式网盘项目。《Go程序开发实战宝典》附赠了相关知识点的视频讲解及案例源代码,读者可自行下载(详细方法见本书封底)。《Go程序开发实战宝典》适合所有对Go语言感兴趣的开发人员阅读,即使没有Go语言基础也可以直接上手使用,同时也可作为计算机相关专业师生的参考用书。
作者简介
1. 穆旭东,高级软件工程师、全栈开发者,精通C/C,对Go语言有深入的理解,深耕技术领域多年,对高并发架构、微服务、云计算领域有深入研究。擅长高并发网站架构设计、实施、自动化运维开发。具有丰富的技术教学经验和教材编写经验,擅长通过深入浅出的语言讲解底层机制。2. 谭庆丰,教授,广州大学“百人计划”引进人才,当前主要从事网络与信息安全技术研究,主持国家自然科学基金面上项目等项目总计10余项。在IEEE TON、IoTJ、《计算机学报》等国内外重要期刊/会议上发表论文30余篇。
目录
按知识点分类的视频列表
前言
第1章 初识Go语言
1.1 Go语言简介
1.1.1 Go语言的三位主要作者
1.1.2 关于名字
1.1.3 吉祥物
1.1.4 特点与优势
1.1.5 著名项目
1.2 开发环境搭建
1.2.1 Linux环境
1.2.2 Windows环境
1.3 集成开发环境GoLand
1.3.1 下载及安装
1.3.2 创建项目
1.3.3 编写个程序
1.4 Go语言程序结构
1.4.1 标识符
1.4.2 关键字
1.4.3 字面量
1.4.4 注释
1.4.5 分隔符
1.4.6 可见性规则
1.5 本章小结
1.6 习题
第2章 数据类型与运算符
2.1 变量
2.1.1 变量的概念
2.1.2 变量声明与赋值
2.1.3 变量多重赋值
2.1.4 匿名变量
2.2 数据类型
2.2.1 整型
2.2.2 浮点型
2.2.3 复数
2.2.4 布尔型
2.2.5 字符串
2.2.6 字符
2.2.7 类型转换
2.2.8 类型别名
2.3 常量
2.3.1 声明方式
2.3.2 枚举
2.3.3 iota
2.4 运算符
2.4.1 算术运算符
2.4.2 关系运算符
2.4.3 逻辑运算符
2.4.4 位运算符
2.4.5 赋值运算符
2.4.6 其他运算符
2.4.7 运算符优先级
2.5 本章小结
2.6 习题
第3章 流程控制
3.1 条件判断语句
3.1.1 语法结构
3.1.2 if语句
3.1.3 if else语句
3.1.4 else if语句
3.1.5 if嵌套语句
3.2 switch语句
3.2.1 语法结构
3.2.2 type switch
3.2.3 switch初始化
3.2.4 fallthrough
3.3 循环语句
3.3.1 语法结构
3.3.2 嵌套循环
3.3.3 range子语句
3.4 循环控制语句
3.4.1 break语句
3.4.2 continue语句
3.4.3 goto语句和标签
3.5 本章小结
3.6 习题
第4章 函数与指针
4.1 函数
4.1.1 函数声明
4.1.2 作用域
4.1.3 函数变量
4.1.4 闭包与匿名函数
4.1.5 可变参数
4.1.6 递归函数
4.2 指针
4.2.1 指针的本质
4.2.2 基本操作
4.2.3 new函数
4.2.4 nil指针
4.2.5 指针的指针
4.3 函数的参数传递
4.3.1 形参和实参
4.3.2 值传递
4.3.3 引用传递
4.3.4 值类型和引用类型
4.4 本章小结
4.5 习题
第5章 复合数据类型
5.1 数组
5.1.1 理解数组
5.1.2 声明和初始化
5.1.3 访问和修改
5.1.4 遍历数组
5.1.5 多维数组
5.1.6 函数间传递数组
5.1.7 数组指针与指针数组
5.2 切片
5.2.1 理解切片
5.2.2 声明和初始化
5.2.3 修改和截取
5.2.4 增长和复制
5.2.5 删除切片元素
5.2.6 快速排序
5.3 map
5.3.1 理解map
5.3.2 创建map
5.3.3 删除元素
5.3.4 函数间传递map
5.4 本章小结
5.5 习题
第6章 字符串
6.1 基本操作
6.1.1 字符串底层结构
6.1.2 UTF-8编码
6.1.3 常用操作
6.1.4 遍历字符串
6.2 处理方法
6.2.1 检索字符串
6.2.2 分隔字符串
6.2.3 大小写转换
6.2.4 修剪字符串
6.2.5 比较字符串
6.2.6 连接和替换
6.3 类型转换
6.3.1 字符串转其他类型
6.3.2 其他类型转字符串
6.4 正则表达式
6.4.1 基本规则
6.4.2 使用regexp包
6.5 本章小结
6.6 习题
第7章 面向对象编程
7.1 结构体
7.1.1 结构体定义
7.1.2 实例化
7.1.3 函数间传递结构体
7.1.4 匿名结构体
7.1.5 匿名成员
7.1.6 结构体嵌入
7.2 方法
7.2.1 为类型添加方法
7.2.2 方法与函数的区别
7.2.3 值语义和引用语义
7.2.4 方法继承和重写
7.3 接口
7.3.1 Duck Typing
7.3.2 接口的使用
7.3.3 接口赋值
7.3.4 接口查询
7.3.5 多态
7.3.6 空接口
7.3.7 类型断言
7.4 设计模式
7.4.1 开闭原则
7.4.2 依赖倒置原则
7.4.3 单例模式
7.4.4 工厂方法模式
7.4.5 抽象工厂模式
7.4.6 外观模式
7.4.7 观察者模式
7.5 反射
7.5.1 Go语言的反射
7.5.2 反射法则
7.5.3 反射变量的类型和值
7.5.4 创建新实例
7.5.5 创建引用类型的实例
7.5.6 创建函数
7.6 本章小结
7.7 习题
第8章 编写规范和错误处理
8.1 编写规范
8.1.1 代码风格
8.1.2 注释
8.1.3 命名
8.2 错误处理
8.2.1 error接口
8.2.2 处理error的方式
8.2.3 自定义错误
8.2.4 引入包
8.3 defer
8.3.1 执行顺序
8.3.2
前言
第1章 初识Go语言
1.1 Go语言简介
1.1.1 Go语言的三位主要作者
1.1.2 关于名字
1.1.3 吉祥物
1.1.4 特点与优势
1.1.5 著名项目
1.2 开发环境搭建
1.2.1 Linux环境
1.2.2 Windows环境
1.3 集成开发环境GoLand
1.3.1 下载及安装
1.3.2 创建项目
1.3.3 编写个程序
1.4 Go语言程序结构
1.4.1 标识符
1.4.2 关键字
1.4.3 字面量
1.4.4 注释
1.4.5 分隔符
1.4.6 可见性规则
1.5 本章小结
1.6 习题
第2章 数据类型与运算符
2.1 变量
2.1.1 变量的概念
2.1.2 变量声明与赋值
2.1.3 变量多重赋值
2.1.4 匿名变量
2.2 数据类型
2.2.1 整型
2.2.2 浮点型
2.2.3 复数
2.2.4 布尔型
2.2.5 字符串
2.2.6 字符
2.2.7 类型转换
2.2.8 类型别名
2.3 常量
2.3.1 声明方式
2.3.2 枚举
2.3.3 iota
2.4 运算符
2.4.1 算术运算符
2.4.2 关系运算符
2.4.3 逻辑运算符
2.4.4 位运算符
2.4.5 赋值运算符
2.4.6 其他运算符
2.4.7 运算符优先级
2.5 本章小结
2.6 习题
第3章 流程控制
3.1 条件判断语句
3.1.1 语法结构
3.1.2 if语句
3.1.3 if else语句
3.1.4 else if语句
3.1.5 if嵌套语句
3.2 switch语句
3.2.1 语法结构
3.2.2 type switch
3.2.3 switch初始化
3.2.4 fallthrough
3.3 循环语句
3.3.1 语法结构
3.3.2 嵌套循环
3.3.3 range子语句
3.4 循环控制语句
3.4.1 break语句
3.4.2 continue语句
3.4.3 goto语句和标签
3.5 本章小结
3.6 习题
第4章 函数与指针
4.1 函数
4.1.1 函数声明
4.1.2 作用域
4.1.3 函数变量
4.1.4 闭包与匿名函数
4.1.5 可变参数
4.1.6 递归函数
4.2 指针
4.2.1 指针的本质
4.2.2 基本操作
4.2.3 new函数
4.2.4 nil指针
4.2.5 指针的指针
4.3 函数的参数传递
4.3.1 形参和实参
4.3.2 值传递
4.3.3 引用传递
4.3.4 值类型和引用类型
4.4 本章小结
4.5 习题
第5章 复合数据类型
5.1 数组
5.1.1 理解数组
5.1.2 声明和初始化
5.1.3 访问和修改
5.1.4 遍历数组
5.1.5 多维数组
5.1.6 函数间传递数组
5.1.7 数组指针与指针数组
5.2 切片
5.2.1 理解切片
5.2.2 声明和初始化
5.2.3 修改和截取
5.2.4 增长和复制
5.2.5 删除切片元素
5.2.6 快速排序
5.3 map
5.3.1 理解map
5.3.2 创建map
5.3.3 删除元素
5.3.4 函数间传递map
5.4 本章小结
5.5 习题
第6章 字符串
6.1 基本操作
6.1.1 字符串底层结构
6.1.2 UTF-8编码
6.1.3 常用操作
6.1.4 遍历字符串
6.2 处理方法
6.2.1 检索字符串
6.2.2 分隔字符串
6.2.3 大小写转换
6.2.4 修剪字符串
6.2.5 比较字符串
6.2.6 连接和替换
6.3 类型转换
6.3.1 字符串转其他类型
6.3.2 其他类型转字符串
6.4 正则表达式
6.4.1 基本规则
6.4.2 使用regexp包
6.5 本章小结
6.6 习题
第7章 面向对象编程
7.1 结构体
7.1.1 结构体定义
7.1.2 实例化
7.1.3 函数间传递结构体
7.1.4 匿名结构体
7.1.5 匿名成员
7.1.6 结构体嵌入
7.2 方法
7.2.1 为类型添加方法
7.2.2 方法与函数的区别
7.2.3 值语义和引用语义
7.2.4 方法继承和重写
7.3 接口
7.3.1 Duck Typing
7.3.2 接口的使用
7.3.3 接口赋值
7.3.4 接口查询
7.3.5 多态
7.3.6 空接口
7.3.7 类型断言
7.4 设计模式
7.4.1 开闭原则
7.4.2 依赖倒置原则
7.4.3 单例模式
7.4.4 工厂方法模式
7.4.5 抽象工厂模式
7.4.6 外观模式
7.4.7 观察者模式
7.5 反射
7.5.1 Go语言的反射
7.5.2 反射法则
7.5.3 反射变量的类型和值
7.5.4 创建新实例
7.5.5 创建引用类型的实例
7.5.6 创建函数
7.6 本章小结
7.7 习题
第8章 编写规范和错误处理
8.1 编写规范
8.1.1 代码风格
8.1.2 注释
8.1.3 命名
8.2 错误处理
8.2.1 error接口
8.2.2 处理error的方式
8.2.3 自定义错误
8.2.4 引入包
8.3 defer
8.3.1 执行顺序
8.3.2
猜您喜欢