Go 语言趣学培训
课程循序渐进地介绍了使用 Go 语言所必需的知识,
展示了非常多生动有趣的例子,
并通过提供大量练习来加深读者对课程中所述内容的理解。
1 循环和分支
2 实数和整数
3 维吉尼亚加密法
4 组合与转发
5 变量作用域
6 类型转换
7 函数和方法
8 goroutine 和并发
1
预备,Go!
1.了解Go与众不同的地方
2.了解如何访问GoPlayground
3.学会将文本打印到屏幕上
4.对包含任意自然语言的文本进行
2
被美化的计算器
1.学会让计算机执行数学运算
2.学会声明变量和常量
3.了解声明和赋值的区别
4.学会使用标准库生成伪随机数
3
循环和分支
1.学会使计算机通过if和switch做选择
2.学会使用for循环重复执行指定的代码
3.学会基于条件实现循环和分支处理
4
变量作用域
1.知悉变量作用域的好处
2.学会用更简洁的方式声明变量
3.了解for、if和switch是如何与变量作用域交互的
4.学会如何控制作用域的范围
1
前往火星的航行票
5
实数
1.学会用两种不同的类型表示实数
2.学会在内存占用和精度之间进行取舍
3.学会妥善处理储钱罐中的舍入错误
6
整数
1.学会使用10种不同的整数类型
2.学会选择合适的类型
3.学会使用十六进制表示和二进制表示
7
大数
1.学会通过使用指数来减少键入0的次数
2.学会使用Go的big包处理非常大的数
3.学会使用大常量和字面值
8
多语言文本
1.学会访问和操作单个字母
2.学会加密和解密机密消息
3.学会开发支持多语种的程序
9
类型转换
1.学会在数值、字符串和布尔值之间实施类型转换
挑战 2
维吉尼亚加密法
10
函数
1.认识函数声明的各个组成部分
2.学会编写可复用的函数以构建更大型的程序
11
方法
1.学会声明新类型
2.学会将函数重写为方法
12
一等函数
1.学会将函数赋值给变量
2.学会将函数传递给函数
3.学会编写能够创建函数的函数
挑战 3
温度表
13
劳苦功高的数组
1.学会声明和初始化数组
2.学会赋值和访问数组中的元素
3.学会迭代数组
14
切片:指向数组的窗口
1.学会使用切片,通过窗口观察太阳系
2.学会使用标准库对切片实施字母排序
15
更大的切片
1.学习将更多元素追加至切片
2.了解长度和容量的运作机制
16
无所不能的映射
1.学会将映射用作非结构化数据的收集器
2.学会声明、访问和迭代映射
3.探索多用途的映射类型的一些用法
17
切片人生
1.切片
2.数组
18
结构
1.学会为火星上的坐标创建小型结构
2.学会如何将结构编码为流行的JSON数据格式
19
Go 没有类
1.学会通过编写方法为结构化数据提供行为
2.学会应用面向对象设计原则
20
组合与转发
1.学会通过组合合并多个结构
2.学会将方法转发至其他方法
3.学会将传统的类继承抛诸脑后
21
接口
1.学会让类型“说话”
2.学会按需使用接口
3.了解标准库中的接口
4.学会帮助人类免受火星入侵
挑战 4
火星上的动物避难所
22
关于指针的二三事
1.学会声明和使用指针
2.理解指针和随机访问存储器(RAM)之间的关系
3.了解指针的使用时机
23
关于 nil 的纷纷扰扰
1.学会处理没有值的情况
2.理解nil引发的问题
3.了解Go是如何改进nil机制的
24
孰能无过
1.学会写入文件并处理错误
2.学会以创造性的方式处理错误
3.学会创建并标识特定错误
4.学会处理惊恐
挑战 5
数独规则
25
goroutine 和并发
1.学会启动goroutine
2.学会使用通道进行通信
3.理解通道流水线
26
并发状态
1.学会维持状态安全
2.学会使用互斥锁和应答通道
3.学会实现服务循环