Go 语言从入门到实战
蔡超
Mobvista 技术副总裁兼首席架构师,前亚马逊(中国)首席软件架构师
48919 人已学习
新⼈⾸单
¥
59
课程目录
已完结/共 55 讲
第一章:Go语言简介
(4讲)
01 | Go语言课程介绍
时长 06:57
02 | 内容综述
时长 02:28
03 | Go语言简介:历史背景、发展现状及语言特性
时长 06:28
04 | 编写第一个Go程序
时长 13:08
第二章:基本程序结构
(4讲)
05 | 变量、常量以及与其他语言的差异
时长 21:16
06 | 数据类型
时长 11:51
07 | 运算符
时长 10:33
08 | 条件和循环
时长 13:22
第三章:常用集合
(3讲)
09 | 数组和切片
时长 31:47
10 | Map声明、元素访问及遍历
时长 13:09
11 | Map与工厂模式,在Go语言中实现Set
时长 09:44
第四章:字符串
(1讲)
12 | 字符串
时长 16:47
第五章:函数
(2讲)
13 | Go语言的函数
时长 12:38
14 | 可变参数和defer
时长 07:03
第六章:面向对象编程
(4讲)
15 | 行为的定义和实现
时长 11:08
16 | Go语言的相关接口
时长 14:12
17 | 扩展与复用
时长 16:03
18 | 不一样的接口类型,一样的多态
时长 14:30
第七章:编写好的错误处理
(2讲)
19 | 编写好的错误处理
时长 15:43
20 | panic和recover
时长 07:27
第八章:包和依赖管理
(2讲)
21 | 构建可复用的模块(包)
时长 19:30
22 | 依赖管理
时长 07:36
第九章:并发编程
(7讲)
23 | 协程机制
时长 09:05
24 | 共享内存并发机制
时长 09:29
25 | CSP并发机制
时长 12:44
26 | 多路选择和超时
时长 05:02
27 | channel的关闭和广播
时长 10:16
28 | 任务的取消
时长 04:16
29 | Context与任务取消
时长 05:32
第十章:典型并发任务
(5讲)
30 | 只运行一次
时长 09:39
31 | 仅需任意任务完成
时长 05:21
32 | 所有任务完成
时长 03:39
33 | 对象池
时长 07:51
34 | sync.pool对象缓存
时长 09:54
第十一章:测试
(3讲)
35 | 单元测试
时长 11:48
36 | Benchmark
时长 07:12
37 | BDD
时长 06:15
第十二章:反射和Unsafe
(3讲)
38 | 反射编程
时长 08:18
39 | 万能程序
时长 08:03
40 | 不安全编程
时长 06:04
第十三章:常见架构模式的实现
(2讲)
41 | 实现pipe-filter framework
时长 09:18
42 | 实现micro-kernel framework
时长 11:54
第十四章:常见任务
(4讲)
43 | 内置JSON解析
时长 03:36
44 | easyjson
时长 04:27
45 | HTTP服务
时长 05:14
46 | 构建RESTful服务
时长 08:23
第十五章:性能调优
(4讲)
47 | 性能分析工具
时长 19:08
48 | 性能调优示例
时长 16:03
49 | 别让性能被锁住
时长 14:08
50 | GC友好的代码
时长 11:14
第十六章:高可用性服务设计
(5讲)
51 | 高效字符串连接
时长 03:54
52 | 面向错误的设计
时长 11:39
53 | 面向恢复的设计
时长 08:46
54 | Chaos Engineering
时长 07:38
55 | 结课测试&结束语
时长 04:25
Go 语言从入门到实战
登录
|
注册
留言
5
收藏
沉浸
阅读
分享
手机端
回顶部
Sorry, your browser doesn't support embedded videos.
当前播放: 50 | GC友好的代码
00:00
/ 00:00
高清
高清
1.0x
2.0x
1.5x
1.25x
1.0x
0.75x
0.5x
音量
网页全屏
全屏
00:00
付费课程,可试看
01 | Go语言课程介绍
02 | 内容综述
03 | Go语言简介:历史背景、发展现状及语言特性
04 | 编写第一个Go程序
05 | 变量、常量以及与其他语言的差异
06 | 数据类型
07 | 运算符
08 | 条件和循环
09 | 数组和切片
10 | Map声明、元素访问及遍历
11 | Map与工厂模式,在Go语言中实现Set
12 | 字符串
13 | Go语言的函数
14 | 可变参数和defer
15 | 行为的定义和实现
16 | Go语言的相关接口
17 | 扩展与复用
18 | 不一样的接口类型,一样的多态
19 | 编写好的错误处理
20 | panic和recover
21 | 构建可复用的模块(包)
22 | 依赖管理
23 | 协程机制
24 | 共享内存并发机制
25 | CSP并发机制
26 | 多路选择和超时
27 | channel的关闭和广播
28 | 任务的取消
29 | Context与任务取消
30 | 只运行一次
31 | 仅需任意任务完成
32 | 所有任务完成
33 | 对象池
34 | sync.pool对象缓存
35 | 单元测试
36 | Benchmark
37 | BDD
38 | 反射编程
39 | 万能程序
40 | 不安全编程
41 | 实现pipe-filter framework
42 | 实现micro-kernel framework
43 | 内置JSON解析
44 | easyjson
45 | HTTP服务
46 | 构建RESTful服务
47 | 性能分析工具
48 | 性能调优示例
49 | 别让性能被锁住
50 | GC友好的代码
51 | 高效字符串连接
52 | 面向错误的设计
53 | 面向恢复的设计
54 | Chaos Engineering
55 | 结课测试&结束语
本节摘要
课件及源代码地址
https://gitee.com/geektime-geekbang/go_learning
书目推荐
《计算机程序的构造和解释》
登录
后留言
全部留言(5)
最新
精选
Nemo
goos: linux goarch: amd64 pkg: go_learning/src/ch41/auto_growing cpu: Intel(R) Core(TM) i7-8850H CPU @ 2.60GHz BenchmarkAutoGrow-12 1342 879654 ns/op BenchmarkProperInit-12 6594 164639 ns/op BenchmarkOverSizeInit-12 1827 584644 ns/op PASS ok go_learning/src/ch41/auto_growing 5.123s 这里为啥大八倍的反而第二快?
2023-05-03
lixin
gc,可以看出从是哪些 空间或者变量发生 gc?
2022-08-15
sky
大家有遇到在浏览器上点击 view trace 空白的情况吗,点击 Goroutine analysis 是正常有数据的
2020-02-15
1
木头发芽
参数为结构体切片我一般会用指针数组如 func updateUserList(userlist []*UserInfo) 对切片来说是传值,会拷贝,但是切片结构体里的userinfo数组是指针,所以只是拷贝了指针值,而不是拷贝userinfo数组成员的值。开销也比较小。 是不是参数传*[]*UserInfo会更好?
2019-12-11
Geek_b3928a
老师我有问题请教,我在过去数据库多条数据后放在一个结构体的切片中,比如多个用户的信息,那么函数应该返回这个结构体的指针还是直接还回结构体?哪种方式性能更好?貌似编译器都会将这个结构体对象分配到对上?
2019-07-11
收起评论