Go 实战训练营全新升级

知识点更全面更适应学员需求互动感更强

第 1 期已新增 63 个课时,4 大技术方向

目前课程共计 138 个课时,11 大技术方向

成为大厂青睐的 Go 工程师

中级 Go 工程师任职要求
熟练掌握 Go 语言及 Echo、Gin、Beego 等常见的开发框架,能够进行 Go 语言相关逻辑的深层优化;
熟练掌握面向网络的编程,掌握 TCP/IP 协议,对 Socket/WebSocket 通信和 HTTP/HTTPS 协议有深刻理解;
掌握 Linux 系统及原理,有 Shell 脚本编写能力,有较强的 Linux 下 TroubleShooting 能力;
熟悉常用开源系统和中间件 RabbitMQ、RocketMQ、Kafka 等,熟悉容器技术 Docker,容器编排如 Kubernetes 等相关技术;
熟练掌握 Redis 等 NoSQL 技术,精通 MySQL 的开发设计和调优;
熟悉 RPC 框架、负载均衡等分布式技术,具备一定的系统架构设计能力。

为什么要学 Go 语言

  • 《开发人员想要学习的第一语言》
    排行榜

    01
  • Go 是云时代首选编程语言

    02

你是否面临以下问题?

Go 基础语法虽好学,但缺乏实战经验,无法应用到实际工作
缺乏企业实际应用场景,不知道如何发挥 Go 的核心优势
对于框架和中间件,不知道核心原理,会用不会写
代码质量差,设计品味低,需要了解更多开源代码实例
自学有困难,缺乏系统的学习体系和高效的学习方法

实战派讲师带你掌握 Go 语言

邓明

前 Shopee 高级工程师
Beego PMC

邓明(大明),前 Shopee 高级工程师,热爱开源。大明在互联网业务研发方面经验丰富,尤其擅长企业级应用所使用到的各种中间件,包括 Web 框架、ORM 框架、分库分表框架、微服务框架等。

大明同时具备业务开发和中间件研发经验。他既可以站在业务研发者的角度解读框架,让技术真正落地,又可以站在设计者的角度讲述设计原理,带你领悟设计和实现一个框架的要点、难点。

大明还一直是开源的活跃贡献者,是 Beego 的 PMC 以及 Apache Dubbo Committer。长期站在一线“造轮子”的他,文档编写、接口设计和代码落地能力都十分出色。

此外,大明长期担任毛剑老师 Go 进阶训练营领教,有丰富的教学答疑经验,授课能力深受学员好评,他对学员学习的痛难点有深刻理解,能够有针对性地设计课程内容和实践练习。

作为一线面试官,大明深谙面试要求,对于面试要点、语言组织、引导话题等都有独到见解。

从原理到实战,紧贴大厂
能力模型

主攻开源框架及中间件

以实战串讲,内化所学知识

  • 主题一:并发等待队列实现
  • 主题二:SSO/OAuth2 系统设计
  • 主题三:增强 ORM 框架
  • 主题四:全链路压测

课程大纲

录播部分
直播部分
模块一 模块二 模块三 模块四 模块五 模块六 模块七 模块八
Web 框架
教学目标

掌握 Web 框架的基本原理

掌握如何设计并且实现一棵前缀路由树,支持通配符匹配,路径参数

掌握 HTTP Server 和 Context 的设计,并且提供丰富 API

掌握 HTTP 中 Session 的设计和实现

掌握 Web 框架中 AOP 的解决方案

设计并实现简单的静态资源服务器

学习和工作中的痛点

用过很多 Web 框架,但是并不了解 Web 框架的原理,并不知道怎么注册路由,怎么执行路由匹配

面试的时候无法清晰阐述前缀路由树的原理,在实际开发中,不知道如何快速定位 404 之类的错误

不知道如何设计统一的 Session 抽象,支持 Session 运行在本地内存或者 Redis 上

无法灵活运用 Web 框架提供的 AOP 方案解决登录校验、鉴权、日志、tracing、logging 等问题

实践练习

设计一个 HTTP Server,该 HTTP Server 将会基于前缀路由树支持路由通配符匹配、路径参数、正则匹配

为 HTTP Server 添加静态资源支持(CSS、JS 等),并且提供缓存和内存控制功能

为 HTTP Server 添加 Session 功能

为 HTTP Server 添加模板引擎功能,并提供基于 Go 模板的默认实现

为 HTTP Server 设计 AOP 方案

利用该 HTTP Server 实现简单的用户 API,支持注册、登录等

利用该 HTTP Server 的 AOP 方案解决登录校验、日志、tracing 和 metric 问题

利用该 HTTP Server 的 Session 功能,维护登录态

详细内容
第一周第二周第三周

Web 框架概览与核心设计:Server、Context 和路由树

核心接口设计:Server 抽象和 Context 抽象

开源实例:Gin、Beego 中的 Server 和 Context 抽象

进阶语法:HTTP 包

代码演示:Web 框架与 HTTP 包的结合点

设计并实现前缀路由树:

开源实例:HttpRouter、Gin、Beego、Echo 和 Iris 中的路由树设计

前缀路由树的原理

前缀路由树设计

代码演示:实现前缀路由树,支持通配符匹配和路径参数

作业:支持正则匹配

面试要点

4 大实战项目

一、由浅入深手写 Web 框架实现用户注册登录
二、从 0 到 1 手写 ORM 框架优化服务性能
三、统一缓存 API 和 Redis 实现缓存模式提升缓存服务性能
四、从 0 到 1 搭建微服务框架

陪伴式学习服务

适合人群

工作经验在 1-3 年的初级 Go 开发工程师
从事其他语言,想转行做 Go 开发工程师
对中间件和开源框架不太熟悉的 Go 开发工程师
想系统提升技术水平的 Go 开发工程师

十二道工序精心打磨

我们的承诺,请你监督

VIP 学习资料免费领取

帮助与常见问题
Q:参加 Go 进阶训练营,需要具备什么基础?

需要掌握至少一门后端编程语言,有后端开发经验。

Q:学完课程后能到什么水平?

能达到字节 2-1 的水平。

Q:是否有详细的课程表?

有的哦,可以通过“领取优惠”,添加学习顾问进行详细了解。

展示更多