Go 语言从入门到实战
蔡超
Mobvista 技术副总裁兼首席架构师,前亚马逊(中国)首席软件架构师
48919 人已学习
新⼈⾸单¥59
课程目录
已完结/共 55 讲
第一章:Go语言简介 (4讲)
第二章:基本程序结构 (4讲)
第三章:常用集合 (3讲)
第四章:字符串 (1讲)
时长 16:47
第五章:函数 (2讲)
第六章:面向对象编程 (4讲)
第七章:编写好的错误处理 (2讲)
第八章:包和依赖管理 (2讲)
第九章:并发编程 (7讲)
第十章:典型并发任务 (5讲)
第十一章:测试 (3讲)
时长 11:48
时长 07:12
时长 06:15
第十二章:反射和Unsafe (3讲)
时长 08:18
时长 08:03
第十三章:常见架构模式的实现 (2讲)
第十四章:常见任务 (4讲)
时长 04:27
时长 05:14
第十五章:性能调优 (4讲)
第十六章:高可用性服务设计 (5讲)
Go 语言从入门到实战
登录|注册
留言
31
收藏
沉浸
阅读
分享
手机端
回顶部
当前播放: 17 | 扩展与复用
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 | 结课测试&结束语
登录 后留言

全部留言(31)

  • 最新
  • 精选
风吹过
一个简单的例子,绕得云里雾里,自己的思路都不清晰,还真不如看文档

作者回复: 有好的文档给同学们一起推荐一下吧

2019-06-03
5
16
卜凌峰
老师 既然go中的方法都是值传递,那么hi(word *string)和hi(word string)有什么区别

作者回复: 区别还是很多的,由于第一个传递的是指针 1. 第一个可以传入 nil,而第二个不行 2. 在hi中修改传入的指针指向的字符串的值,调用者的值也会受影响 3. 当传入的字符串很大的时候,第一个可以有效的避免大量的值复制

2020-08-06
2
3
刘卓
老师,这样的 override 机制是不是就导致我们常用的模板方法失效了,“父类”的方法里钩不到子类重载后的方法。那模板方法怎样实现或者替代呢?

作者回复: 在Go中不能通过继承或Override的方式来完成这样的工作,要改为使用接口来实现

2020-10-09
2
张帅
所以是没办法重载Pet的Speak方法?

作者回复: GO语言是不支持继承的,所以也就无法对父类方法override

2019-10-31
1
Aprelude
new了dog 但是没有new里面的成员pet,这个为啥不会报空指针异常啊

作者回复: 这是Go的“匿名类型嵌⼊”的特殊语法。

2020-07-11
Remember九离
最后一个示例不是很明白 ,Dog 自己实现了 Speak 方法, 但是再调用 dog.SpeakTo("xxx") ,因为dog 自己没有实现 SpeakTo ,所以调用了 Pet 的 SpeakTo ,Pet 的 SpeakTo 里调用了自己的 Speak () 所以显示 ... , 为什么这里会说没有去调用 Dog 里重写的 Speak ,所以这和go语言没关系吧 如果是 dog.Speak() 那dog重写了Speak 就调用自己的 没有写还是调用的 Pet.Speak()

作者回复: 正如我在课件中提到的Go语言是不支持继承的。这个只是通过匿名嵌套实现的复合。所以,Dog中实际都是pet中的方法,并且由于pet并不是继承中的父类,所以也不能访问Dog中的方法或成员。

2020-02-20
3
stopper
为什么总有一种,看文档比视频更好的感觉,不合理
2019-05-30
10
46
大王叫我来巡山
重载(overload)是指同一个类里有函数名相同但是参数不同的函数,重写(override)指子类重新实现父类已有的方法
2019-03-18
5
20
Geek_56ba03
不一定非要走 面向对象的路数。新的语言,新的编程习惯。
2019-03-28
14
147258
感觉,代码逻辑,代码编写,讲课的流程度,都是磕磕绊绊的, 看的好痛苦~~
2020-02-02
1
13
收起评论