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 语言从入门到实战
登录|注册
留言
5
收藏
沉浸
阅读
分享
手机端
回顶部
当前播放: 46 | 构建RESTful服务
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 | 结课测试&结束语
登录 后留言

全部留言(5)

  • 最新
  • 精选
manatee
restful一个相同URL节点有多种方法每一个方法都要写一遍router.GET router.POST router.PUT吗? 不可以一个一条router 对应一个struct,struct 里面对应相应都post get put方法吗?
2019-04-24
1
云仔糕
老师,go开发web应用,有推荐的框架么?
2022-03-23
1
王莹
研读net/http/Server.go的代码,打算打开debugServerConnections变量进行调试,通过如下方式Debug发现变量修改成功了,但是断点设置不了,是不是编译系统判断这个包级别私有变量一定为false,其分支语句100%不能执行所以跳过编译?哪里的使用姿势不对吗? //go:linkname debugServerConnections net/http.debugServerConnections var debugServerConnections bool = true
2022-01-12
escray
抄了一遍代码,再抄一遍 Github 上的介绍 HttpRouter is a lightweight high performance HTTP request router (also called multiplexer or just mux for short) for go. ... this router supports variables in the routing pattern and matches against the request method. It also scales better. The router is optimized for high performance and a small memory footprint. It scales well even with very long paths and a large number of routes. A compressing dynamic trie (radix tree) structure is used for efficient matching. 前缀树
2021-04-13
公众号:程序员大兵
client := &http.Client{} client.Transport = &http.Transport{ //DisableKeepAlives:true, TLSClientConfig: &tls.Config{ InsecureSkipVerify: true, }, Proxy: func(request *http.Request) (u *url.URL, err error) { //return url.Parse("http://10.19.0.85:8888") //return url.Parse("http://192.168.11.123:8888") return rp(request) //返回 squid的代理地址URL 例如 http://账号:密码@ip地址:8999 }, } method := "GET" u = "https://220.181.38.150" req, err := http.NewRequest(method, u, nil) if err != nil { fmt.Println(err) } req.Host = "www.baidu.com" res, err := client.Do(req) 这么写为什么请求会报错呢,squid日志直接500
2020-04-17
收起评论