首页课程体系VIP试听 服务体系名师团队 实战项目关于我们 立即咨询
Go 全栈 · 云原生工程师培养计划 ⚡ 6 大生产级实战项目

9 个阶段,从零到Go 全栈工程师

不止学语法。京峰带你用 Go 从底层原理一路打到企业级项目:高并发秒杀、企业级堡垒机、自动化运维、云原生监控、K8s 多集群管理……每个项目都能跑、有架构图、可演示,学完简历直接写「生产级 Go 项目经验」。

9进阶阶段
90+核心章节
6生产级项目
200+实战知识点

九阶段学习路线

由浅入深,逐阶段打通 Go 语言全栈能力,最终用 6 大生产级项目完成求职作品集。

1
Go 语言筑基从语言起源、环境搭建到基础语法,建立完整的 Go 开发第一印象。
2
运算符与流程控制深入各类运算符,掌握 if / switch / for 与键盘交互,写出第一个完整程序。
3
指针与函数编程理解指针内存模型,吃透函数、多返回值、闭包与递归。
4
数组、切片与 Map精通 Go 三大复合数据结构,玩转切片与映射,搞定排序与查找。
5
工程化基础掌握包机制、defer/panic 错误处理与字符串处理全家桶。
6
标准库进阶regexp / time / math / rand 标准库,完成猜数字、日志分析、开源包发布等实战。
7
面向对象与接口用结构体、方法、接口与继承实现 Go 面向对象,完成校园卡综合项目。
8
并发与网络开发goroutine / channel / MPG 模型解决并发安全,掌握 Socket 与 HTTP 编程。
9
Gin 全栈项目实战基于 Gin 打通全栈,连做 6 大生产级项目,构建求职作品集。
实战项目矩阵 · 简历作品集

6 个项目做完,就是你的求职筹码

覆盖后端高频面试方向,每个项目配套架构图、源码与可演示环境,面试时直接讲。

项目 01

企业级堡垒机

SSH/SFTP 审计网关:会话代理、录屏回放、权限管控与高危命令拦截,对标 JumpServer。

GoSSHWebSocket审计
项目 02

高并发秒杀系统

库存预热、限流、Redis Lua 防超卖、消息队列削峰,压测大屏实时验证高并发。

RedisKafka限流分布式锁
项目 03

自动化运维平台

CMDB 资产管理、任务编排 DAG、批量命令执行、定时任务与审批流,一站托管运维操作。

CMDB任务编排cron批量执行
项目 04

云原生监控平台

Prometheus 采集 + 自研 Exporter + Grafana 看板 + 告警闭环,覆盖指标/日志/链路。

PrometheusExporterGrafana告警
项目 05

K8s 多集群管理

client-go / Operator 开发、CRD 封装、多集群纳管、应用商店与灰度发布回滚。

K8sOperatorCRDHelm
项目 06

分布式 IM / 短链

WebSocket 长连接网关、消息可靠投递;短链生成与跳转统计,进阶实时通信实战。

WebSocketIM短链Pub/Sub
阶段 1

Go 语言筑基 · 环境与语法入门

从 Go 语言起源、环境搭建到基础语法,建立完整的 Go 开发第一印象,写出第一个能跑的程序。

1.1Go 语言简介
1.1Go 语言起源
  • 1.1.1Go 语言诞生于 2007 年 Google 内部,旨在解决大规模系统开发效率问题。
  • 1.1.22009 年 11 月正式开源发布,以简洁、并发、高性能为核心设计目标。
  • 1.1.3了解 Go 在云原生、微服务、DevOps 领域的典型应用场景。
1.2Go 语言创始人
  • 1.2.1Ken Thompson:UNIX 与 B 语言之父,Plan 9 核心成员。
  • 1.2.2Rob Pike:UTF-8 共同发明人,Plan 9 与 Limbo 语言设计者。
  • 1.2.3Robert Griesemer:Google V8 引擎核心成员,主导 Go 语言类型系统设计。
1.3Go 是编译型语言
  • 1.3.1Go 通过 go build 直接编译为机器码,无需虚拟机即可运行。
  • 1.3.2编译速度快,支持交叉编译,可一键生成 Windows/Linux/macOS 可执行文件。
  • 1.3.3对比解释型语言,Go 程序启动快、运行效率高、部署简单。
1.4为什么要学习 Go 语言
  • 1.4.1Go 简洁易学,语法克制,适合团队大规模协作。
  • 1.4.2原生并发模型 goroutine + channel,轻松应对高并发场景。
  • 1.4.3拥有丰富的云原生生态:Docker、Kubernetes、Etcd、Prometheus 均用 Go 编写。
1.5Go 适宜的场景
  • 1.5.1云原生基础设施:容器、编排、服务网格、可观测性。
  • 1.5.2后端微服务:API 网关、RPC 框架、消息队列、分布式存储。
  • 1.5.3DevOps 工具:CLI 工具、自动化运维平台、CI/CD 流水线。
1.6优势总结
  • 1.6.1语法简洁,25 个关键字,学习曲线平缓。
  • 1.6.2内置垃圾回收、goroutine、channel,并发编程开箱即用。
  • 1.6.3静态类型 + 快速编译,兼顾开发效率与运行性能。
1.7Go 语言吉祥物
  • 1.7.1Go 的吉祥物 Gopher 由 Renée French 设计。
  • 1.7.2Gopher 形象活泼友好,代表 Go 社区开放、务实的文化。
  • 1.7.3了解 Gopher 设计规范,避免在正式场合误用商标。
1.2Go 的下载和安装
2.1安装时会遇到的名词学习
  • 2.1.1Windows 使用 MSI 安装包,macOS 使用 pkg 或 Homebrew,Linux 解压 tar.gz 并配置环境变量。
  • 2.1.2验证安装:执行 `go version` 查看版本号。
  • 2.1.3常见安装问题排查:权限、路径、代理设置。
2.2下载
  • 2.2.1访问 go.dev/dl 选择对应系统的安装包。
  • 2.2.2区分稳定版与历史版本,生产环境建议使用官方维护的最新稳定版。
  • 2.2.3配置国内镜像源可显著加快下载速度。
2.3安装
  • 2.3.1Windows 使用 MSI 安装包,macOS 使用 pkg 或 Homebrew,Linux 解压 tar.gz 并配置环境变量。
  • 2.3.2验证安装:执行 `go version` 查看版本号。
  • 2.3.3常见安装问题排查:权限、路径、代理设置。
1.3实战:安装 Golang
1.4实战:配置 Golang 环境
1.5Go 语言的结构和执行
5.1Hello World
  • 5.1.1掌握「Hello World」的核心概念与常用语法。
  • 5.1.2通过典型代码示例理解「Hello World」的实际用法。
  • 5.1.3能够在真实项目中正确运用「Hello World」解决问题。
5.2源码分析
  • 5.2.1掌握「源码分析」的核心概念与常用语法。
  • 5.2.2通过典型代码示例理解「源码分析」的实际用法。
  • 5.2.3能够在真实项目中正确运用「源码分析」解决问题。
5.3总结
  • 5.3.1掌握「总结」的核心概念与常用语法。
  • 5.3.2通过典型代码示例理解「总结」的实际用法。
  • 5.3.3能够在真实项目中正确运用「总结」解决问题。
5.4执行源码
  • 5.4.1掌握「执行源码」的核心概念与常用语法。
  • 5.4.2通过典型代码示例理解「执行源码」的实际用法。
  • 5.4.3能够在真实项目中正确运用「执行源码」解决问题。
5.5实战:输出「Go语言学习」
  • 5.5.1通过完整案例串联所学知识点。
  • 5.5.2培养问题分析与调试能力。
  • 5.5.3产出可直接写入简历的项目片段。
5.6Git 安装
  • 5.6.1Windows 使用 MSI 安装包,macOS 使用 pkg 或 Homebrew,Linux 解压 tar.gz 并配置环境变量。
  • 5.6.2验证安装:执行 `go version` 查看版本号。
  • 5.6.3常见安装问题排查:权限、路径、代理设置。
5.7VSCode
  • 5.7.1掌握「VSCode」的核心概念与常用语法。
  • 5.7.2通过典型代码示例理解「VSCode」的实际用法。
  • 5.7.3能够在真实项目中正确运用「VSCode」解决问题。
1.6Go 编码规范
6.1
  • 6.1.1掌握「行」的核心概念与常用语法。
  • 6.1.2通过典型代码示例理解「行」的实际用法。
  • 6.1.3能够在真实项目中正确运用「行」解决问题。
6.2注释
  • 6.2.1掌握「注释」的核心概念与常用语法。
  • 6.2.2通过典型代码示例理解「注释」的实际用法。
  • 6.2.3能够在真实项目中正确运用「注释」解决问题。
6.3标识符
  • 6.3.1掌握「标识符」的核心概念与常用语法。
  • 6.3.2通过典型代码示例理解「标识符」的实际用法。
  • 6.3.3能够在真实项目中正确运用「标识符」解决问题。
6.4字符串连接
  • 6.4.1掌握 strings 包常用函数与 rune 处理。
  • 6.4.2理解字符串不可变与高效拼接。
  • 6.4.3实践:模板替换、敏感词过滤。
6.5使用空格
  • 6.5.1掌握「使用空格」的核心概念与常用语法。
  • 6.5.2通过典型代码示例理解「使用空格」的实际用法。
  • 6.5.3能够在真实项目中正确运用「使用空格」解决问题。
6.6未使用变量和包引用的处理
  • 6.6.1掌握 var、:=、短变量声明的用法与作用域。
  • 6.6.2理解零值、类型推断与多变量赋值。
  • 6.6.3实践:交换两个变量、批量声明与并行赋值。
1.7Go 语言的数据类型
7.1布尔类型 bool
  • 7.1.1布尔类型仅含 true 与 false。
  • 7.1.2掌握逻辑运算与短路求值。
  • 7.1.3实践:条件判断、状态标志组合。
7.2数字类型
  • 7.2.1掌握类型的声明与转换规则。
  • 7.2.2理解类型系统的设计意图。
  • 7.2.3实践:自定义类型与别名。
7.3字符串类型 string
  • 7.3.1掌握 strings 包常用函数与 rune 处理。
  • 7.3.2理解字符串不可变与高效拼接。
  • 7.3.3实践:模板替换、敏感词过滤。
7.4派生类型
  • 7.4.1掌握类型的声明与转换规则。
  • 7.4.2理解类型系统的设计意图。
  • 7.4.3实践:自定义类型与别名。
1.8变量声明
8.1变量的概念与命名规范
  • 8.1.1掌握 var、:=、短变量声明的用法与作用域。
  • 8.1.2理解零值、类型推断与多变量赋值。
  • 8.1.3实践:交换两个变量、批量声明与并行赋值。
8.2声明变量
  • 8.2.1掌握 var、:=、短变量声明的用法与作用域。
  • 8.2.2理解零值、类型推断与多变量赋值。
  • 8.2.3实践:交换两个变量、批量声明与并行赋值。
8.3变量赋值
  • 8.3.1掌握 var、:=、短变量声明的用法与作用域。
  • 8.3.2理解零值、类型推断与多变量赋值。
  • 8.3.3实践:交换两个变量、批量声明与并行赋值。
8.4匿名变量
  • 8.4.1掌握 var、:=、短变量声明的用法与作用域。
  • 8.4.2理解零值、类型推断与多变量赋值。
  • 8.4.3实践:交换两个变量、批量声明与并行赋值。
1.9Go 语言常量
10.1单个常量的定义
  • 10.1.1使用 const 声明常量,支持 iota 枚举。
  • 10.1.2理解无类型常量与类型转换规则。
  • 10.1.3实践:定义错误码、星期枚举、权限位。
10.2多个常量定义
  • 10.2.1使用 const 声明常量,支持 iota 枚举。
  • 10.2.2理解无类型常量与类型转换规则。
  • 10.2.3实践:定义错误码、星期枚举、权限位。
10.3枚举
  • 10.3.1掌握「枚举」的核心概念与常用语法。
  • 10.3.2通过典型代码示例理解「枚举」的实际用法。
  • 10.3.3能够在真实项目中正确运用「枚举」解决问题。
阶段 2

运算符与流程控制 · 写出第一个程序

深入算术/关系/逻辑/赋值运算符,掌握 if、switch、for 与键盘交互编程,独立完成闰年判断、星座查询、计算器与素数判断。

2.1VSCode 的 GOENV
2.2算术运算符
2.1float32 与 float64 补充
  • 2.1.1掌握「float32 与 float64 补充」的核心概念与常用语法。
  • 2.1.2通过典型代码示例理解「float32 与 float64 补充」的实际用法。
  • 2.1.3能够在真实项目中正确运用「float32 与 float64 补充」解决问题。
2.2相加、相减
  • 2.2.1掌握「相加、相减」的核心概念与常用语法。
  • 2.2.2通过典型代码示例理解「相加、相减」的实际用法。
  • 2.2.3能够在真实项目中正确运用「相加、相减」解决问题。
2.3相乘、相除
  • 2.3.1掌握「相乘、相除」的核心概念与常用语法。
  • 2.3.2通过典型代码示例理解「相乘、相除」的实际用法。
  • 2.3.3能够在真实项目中正确运用「相乘、相除」解决问题。
2.4求余
  • 2.4.1掌握「求余」的核心概念与常用语法。
  • 2.4.2通过典型代码示例理解「求余」的实际用法。
  • 2.4.3能够在真实项目中正确运用「求余」解决问题。
2.5自增、自减法
  • 2.5.1掌握「自增、自减法」的核心概念与常用语法。
  • 2.5.2通过典型代码示例理解「自增、自减法」的实际用法。
  • 2.5.3能够在真实项目中正确运用「自增、自减法」解决问题。
2.6实战:做如下的运算
  • 2.6.1通过完整案例串联所学知识点。
  • 2.6.2培养问题分析与调试能力。
  • 2.6.3产出可直接写入简历的项目片段。
2.3关系运算符
3.1要点
  • 3.1.1提炼本节核心知识点。
  • 3.1.2建立知识之间的联系。
  • 3.1.3标记易错点与面试高频点。
2.4逻辑运算符
2.5赋值运算符
2.6运算符顺序
2.7键盘输入
7.1fmt.Scanln() 获取
  • 7.1.1掌握「fmt.Scanln() 获取」的核心概念与常用语法。
  • 7.1.2通过典型代码示例理解「fmt.Scanln() 获取」的实际用法。
  • 7.1.3能够在真实项目中正确运用「fmt.Scanln() 获取」解决问题。
7.2fmt.Scanf() 获取
  • 7.2.1掌握「fmt.Scanf() 获取」的核心概念与常用语法。
  • 7.2.2通过典型代码示例理解「fmt.Scanf() 获取」的实际用法。
  • 7.2.3能够在真实项目中正确运用「fmt.Scanf() 获取」解决问题。
2.8分支控制 if
8.1单分支
  • 8.1.1掌握「单分支」的核心概念与常用语法。
  • 8.1.2通过典型代码示例理解「单分支」的实际用法。
  • 8.1.3能够在真实项目中正确运用「单分支」解决问题。
8.2双分支
  • 8.2.1掌握「双分支」的核心概念与常用语法。
  • 8.2.2通过典型代码示例理解「双分支」的实际用法。
  • 8.2.3能够在真实项目中正确运用「双分支」解决问题。
8.3多重分支
  • 8.3.1掌握「多重分支」的核心概念与常用语法。
  • 8.3.2通过典型代码示例理解「多重分支」的实际用法。
  • 8.3.3能够在真实项目中正确运用「多重分支」解决问题。
8.4嵌套
  • 8.4.1掌握「嵌套」的核心概念与常用语法。
  • 8.4.2通过典型代码示例理解「嵌套」的实际用法。
  • 8.4.3能够在真实项目中正确运用「嵌套」解决问题。
8.5提示
  • 8.5.1掌握「提示」的核心概念与常用语法。
  • 8.5.2通过典型代码示例理解「提示」的实际用法。
  • 8.5.3能够在真实项目中正确运用「提示」解决问题。
2.9实战:判断闰年
2.10分支控制 switch
10.1switch 定义
  • 10.1.1掌握 switch 表达式与类型 switch。
  • 10.1.2理解 fallthrough 与默认 break。
  • 10.1.3实践:星期判断、命令分发、错误码处理。
10.2基本语法
  • 10.2.1掌握「基本语法」的核心概念与常用语法。
  • 10.2.2通过典型代码示例理解「基本语法」的实际用法。
  • 10.2.3能够在真实项目中正确运用「基本语法」解决问题。
10.3执行流程
  • 10.3.1梳理操作步骤与执行顺序。
  • 10.3.2识别关键节点与异常分支。
  • 10.3.3画出流程图辅助理解。
2.11实战:星座查询
2.12循环控制 for
12.1for
  • 12.1.1掌握经典 for、while 风格 for、无限循环与 range。
  • 12.1.2理解 break、continue、goto 控制流程。
  • 12.1.3实践:九九乘法表、斐波那契、遍历集合。
12.2break
  • 12.2.1掌握 break 跳出循环与带标签 break。
  • 12.2.2理解 break 与 continue 的区别。
  • 12.2.3实践:查找目标提前终止循环。
12.3goto
  • 12.3.1掌握「goto」的核心概念与常用语法。
  • 12.3.2通过典型代码示例理解「goto」的实际用法。
  • 12.3.3能够在真实项目中正确运用「goto」解决问题。
2.13实战:简易计算器
2.14实战:素数判断
阶段 3

指针与函数式编程 · 吃透 Go 内存模型

理解指针内存模型,掌握函数声明、参数、多返回值、闭包与递归,写出连加计算器等实用小程序。

  • 3.1Go 语言指针
  • 3.2Go 函数的声明与定义
  • 3.3函数的简单使用
  • 3.4函数入参补充
  • 3.5函数返回值详解
  • 3.6变量作用域
  • 3.7闭包
  • 3.8递归
  • 3.9实战:连加计算器
阶段 4

复合数据结构 · 数组、切片与 Map 实战

精通 Go 三大复合数据结构,理解值类型与引用类型,玩转切片与映射,完成两数相加与冒泡排序实战。

  • 4.1Go 语言一维数组
  • 4.2Go 语言多维数组
  • 4.3数组长度和遍历
  • 4.4向函数传递数组
  • 4.5数组注意事项
  • 4.6数组指针
  • 4.7Go 语言切片
  • 4.8Go 语言 Map
  • 4.9For Range
  • 4.10实战:两数相加
  • 4.11实战:冒泡算法
阶段 5

工程化基础 · 包管理、错误处理与字符串

掌握包机制、defer/panic 错误处理,以及 strings/strconv 字符串处理全家桶,写出健壮可维护的工程代码。

  • 5.1Go 语言包
  • 5.2Go 错误处理定义
  • 5.3defer
  • 5.4panic
  • 5.5字符串
  • 5.6strings 包
  • 5.7strconv
阶段 6

标准库进阶与工程实战

regexp、time、math、rand 标准库全掌握,完成猜数字、日志分析生成 Excel、发布开源包等可演示实战。

  • 6.1Regexp 正则表达包
  • 6.2Time 包的使用
  • 6.3Math 包的使用
  • 6.4随机数 math/rand
  • 6.5实战:猜数字游戏
  • 6.6实战:日志分析生成 Excel
  • 6.7实战:发布自定义包到 GitHub
阶段 7

面向对象与接口 · 校园卡综合项目

用结构体、方法、接口与继承实现 Go 语言面向对象,完成一个可演示的校园卡综合项目,建立工程化代码组织能力。

  • 7.1面向对象的思想概述
  • 7.2Go 语言面向对象
  • 7.3面向对象的结构体
  • 7.4结构体方法
  • 7.5访问权限
  • 7.6接口
  • 7.7继承
  • 7.8实战:校园卡综合项目
阶段 8

并发编程与网络开发 · 高并发基石

goroutine、channel 与 MPG 模型,解决并发安全,掌握 Socket 与 HTTP 网络编程——这是秒杀、监控、IM 等项目的底层能力。

  • 8.1什么是并发
  • 8.2协程概念解析
  • 8.3Go 的 goroutine 解决方案
  • 8.4简单 go 协程编写
  • 8.5channel 协程通信
  • 8.6实战:10000 以内素数
  • 8.7并发安全问题解决
  • 8.8网络开发
  • 8.9实战:查素数网站
阶段 9

Gin 全栈项目实战 · 6 大生产级项目

基于 Gin + SQLite + SSH/SFTP 从零打通全栈,连做企业级堡垒机、高并发秒杀、自动化运维、云原生监控、K8s 多集群管理与分布式 IM 六大项目,构建求职作品集。

  • 9.1Gin 框架入门与工程规范
  • 9.2项目一:企业级堡垒机(SSH/SFTP 审计网关)
  • 9.3项目二:高并发秒杀系统
  • 9.4项目三:自动化运维平台 AutoOps
  • 9.5项目四:云原生监控平台 Observability
  • 9.6项目五:K8s 多集群管理平台
  • 9.7项目六(进阶):分布式 IM / 短链服务
  • 9.8部署上线与面试通关

Ready to Go? 现在就开始你的全栈之路

从语言基础到 6 大生产级项目,九阶段体系化课程助你成为能扛生产的 Go 工程师。

添加助理老师微信

扫码咨询课程、优惠与 1 对 1 学习规划

助理老师微信二维码
一对一课程规划专属优惠

长按或截图保存二维码,微信扫一扫添加