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 语言从入门到实战
登录
|
注册
留言
10
收藏
沉浸
阅读
分享
手机端
回顶部
Sorry, your browser doesn't support embedded videos.
当前播放: 37 | BDD
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
书目推荐
《计算机程序的构造和解释》
登录
后留言
全部留言(10)
最新
精选
稳
请教老师,下载包go get -u github.com/smartystreets/goconvey/convey后,终端使用没问题。但是$GOPATH/bin/goconvey不存在,mac系统
作者回复: 如果没有,你可以手动编译一下源码就可以生成
2019-04-01
4
1
聪明的墨菲特
大家可以将go get 路径改为 go get -u github.com/smartystreets/goconvey 这样bin目录下就会有对应的文件了 如果使用go get -u github.com/smartystreets/goconvey/convey 是没有的~
2020-02-05
1
10
escray
``` . "github.com/smartystreets/goconvey/convey" ``` 最前面的一个 . ,表示将 import 进来的 package 的方法是在当前名字空间的,可以直接使用。 试图从命令行启动 Web 端的 goconvey 时,先是发现找不到 $GOPATH/bin/goconvey,原因是在 go get 的时候写错了。应该是: ``` github.com/smartystreets/goconvey ``` 而不是 ``` github.com/smartystreets/goconvey/convey ``` 留言里面很多同学也提到了。 然后接下来的错误是自己的 8080 端口被 Jenkins 占用了 ``` > $GOPATH/bin/goconvey -port 8081 ``` 比较可惜的是,之前的测试里面有特意输出 error 的代码,所以就 panic 了 话说回来,在我的刻板印象里面,国内的团队大部分都还没有搞定 TDD,那么使用 BDD 应该也不会太多。 我倒是希望能加入一个 TDD 的团队,有 BDD 更好。
2021-04-11
1
Geek_a4cca6
goconvey 执行go test -v 时,有时会闪退不知道为什么,不稳定么
2022-05-29
满怀
老师 这个goconvey框架的WEB UI是不是不支持Windows呀 我这边运行$GOPATH/bin/goconvey打不开你这块的框架
2022-03-29
Ellie
老师,为什么我的coverage永远都是no statement?我和您的代码内容是一致的。
2021-11-05
1
海盗船长
写起来感觉蛮复杂 不知道实际项目使用情况如何?
2020-01-14
西門熱
这样“go get -u github.com/smartystreets/goconvey”安装才会有$GOPATH/bin/goconvey
2019-04-11
Geek_56ba03
后面会有项目实战么?
2019-04-03
lm
老师,我也遇到如一楼的问题:在bin下面没有找到执行程序goconvey,去官网查了一下,安装命令为:go get github.com/smartystreets/goconvey,但是没装上,一致报错。不知道什么问题,请各位同学老师指教!谢谢!
2019-04-02
4
收起评论