微信读书书城
Go语言从入门到进阶实战(视频教学版)
首页
我的书架
登录
本书已下架
内容不再支持阅读
Go语言从入门到进阶实战(视频教学版)
徐波
扉页
版权信息
配套学习资源
1.同步配套教学视频
2.书中案例源文件
3.配套学习资源获取方式
前言
本书特色
本书内容
本书读者对象
关于作者
第1章 初识Go语言
1.1 Go语言特性
1.2 使用Go语言的项目
1.3 怎样安装Go语言开发包
1.4 搭建开发环境
第2章 Go语言基本语法与使用
2.1 变量
2.2 数据类型
2.3 转换不同的数据类型
2.4 指针
2.5 变量生命期——变量能够使用的代码范围
2.6 字符串应用
2.7 常量——恒定不变的值
2.8 类型别名(Type Alias)
第3章 容器:存储和组织数据的方式
3.1 数组——固定大小的连续空间
3.2 切片(slice)——动态分配大小的连续空间
3.3 映射(map)——建立事物关联的容器
3.4 列表(list)——可以快速增删的非连续空间的容器
第4章 流程控制
4.1 条件判断(if)
4.2 构建循环(for)
4.3 示例:九九乘法表
4.4 键值循环(for range)——直接获得对象的索引和数据
4.5 分支选择(switch)——拥有多个条件分支的判断
4.6 跳转到指定代码标签(goto)
4.7 跳出指定循环(break)——可以跳出多层循环
4.8 继续下一次循环(continue)
第5章 函数(function)
5.1 声明函数
5.2 函数变量——把函数作为值保存到变量中
5.3 示例:字符串的链式处理——操作与数据分离的设计技巧
5.4 匿名函数——没有函数名字的函数
5.5 函数类型实现接口——把函数作为接口来调用
5.6 闭包(Closure)——引用了外部变量的匿名函数
5.7 可变参数——参数数量不固定的函数形式
5.8 延迟执行语句(defer)
5.9 处理运行时发生的错误
5.10 宕机(panic)——程序终止运行
5.11 宕机恢复(recover)——防止程序崩溃
第6章 结构体(struct)
6.1 定义结构体
6.2 实例化结构体——为结构体分配内存并初始化
6.3 初始化结构体的成员变量
6.4 构造函数——结构体和类型的一系列初始化操作的函数封装
6.5 方法
6.6 类型内嵌和结构体内嵌
6.7 示例:使用匿名结构体分离JSON数据
第7章 接口(interface)
7.1 声明接口
7.2 实现接口的条件
7.3 理解类型与接口的关系
7.4 示例:便于扩展输出方式的日志系统
7.5 示例:使用接口进行数据的排序
7.6 接口的嵌套组合——将多个接口放在一个接口内
7.7 在接口和类型间转换
7.8 空接口类型(interface{})——能保存所有值的类型
7.9 示例:使用空接口实现可以保存任意值的字典
7.10 类型分支——批量判断空接口中变量的类型
7.11 示例:实现有限状态机(FSM)
第8章 包(package)
8.1 工作目录(GOPATH)
8.2 创建包package——编写自己的代码扩展
8.3 导出标识符——让外部访问包的类型和值
8.4 导入包(import)——在代码中使用其他的代码
8.5 示例:工厂模式自动注册——管理多个包的结构体
第9章 并发
9.1 轻量级线程(goroutine)——根据需要随时创建的“线程”
9.2 通道(channel)——在多个goroutine间通信的管道
9.3 示例:Telnet回音服务器——TCP服务器的基本结构
9.4 同步——保证并发环境下数据访问的正确性
第10章 反射
10.1 反射的类型对象(reflect.Type)
10.2 反射的值对象(reflect.Value)
10.3 示例:将结构体的数据保存为JSON格式的文本数据
第11章 编译与工具
11.1 编译(go build)
11.2 编译后运行(go run)
11.3 编译并安装(go install)
11.4 一键获取代码、编译并安装(go get)
11.5 测试(go test)
11.6 性能分析(go pprof)——发现代码性能问题的调用位置
第12章 “避坑”与技巧
12.1 合理地使用并发特性
12.2 反射:性能和灵活性的双刃剑
12.3 接口的nil判断
12.4 map的多键索引——多个数值条件可以同时查询
12.5 优雅地处理TCP粘包
第13章 实战演练——剖析cellnet网络库设计并实现Socket聊天功能
13.1 了解cellet网络库特性、流程及架构
13.2 管理TCP Socket连接
13.3 组织接收和发送数据流程的Socket会话(Session)
13.4 排队处理事件的事件队列(Event Queue)
13.5 消息编码(codec)——让cellnet支持消息的多种编码格式
13.6 消息元信息(Message Meta)——消息ID、消息名称和消息类型的关联关系
13.7 接收和发送封包(packet)
13.8 使用cellnet网络库实现聊天功能
是否关闭自动购买?
关闭后,阅读到本书未购买章节均需要手动购买确认。
取消
关闭
暂无笔记
本地导入书籍的 AI 翻译功能
仅支持付费会员使用
微信扫码开通付费会员
一键翻译全文