跳到主内容

PRJ-06 ACTIVE

GoCampus Go 学习体系

a structured go learning campus with tested exercises

三阶段、带测试的 Go 学习与实战手册

  • Go
  • 云原生
  • AI Agent
YEAR
2026
ROLE
独立开发 · 内容体系设计
STATUS
ACTIVE
TIER
项目

3 阶段

Go 语言深入 → 计基强化 → AI 应用开发基础

18 个

带测试 + 参考答案的练习专题(phase1 ×10 / phase2 ×8)

// 01

问题背景

碎片化的「看博客学 Go」效率低且不成体系——知识点之间缺少路径,学完没有检验手段,看答案时觉得熟悉,独立写一遍才发现写不出来。

GoCampus 把学习本身工程化:目标岗位倒推大纲,三阶段递进,每个知识点配带测试的练习,做完 go test 见分晓。文档站同时沉淀深入原理的长文(Slice / Map 内存布局、Interface 底层、String 与字节切片等),并扩展出 k8s 源码教程、主流 Agent 拆解、后端技术栈强化等专题。

// 02

系统架构

内容层

VitePress 文档站承载全部知识

学习计划安排(三阶段)第一 / 二阶段知识详解(原理长文)习题集和答案(脚本自动生成)路线专题:k8s 源码教程 / 主流 Agent 拆解 / 后端技术栈强化

练习层

可执行、可检验的代码题库

phase1:slice / map / interface / goroutine / channel / sync / context / 内存 / 泛型 / 工程化phase2:链表 / 栈队列 / 排序 / 二分 / 双指针 / 回溯 / DP / BFS·DFS每题带 go test 测试与参考答案

工具层

文档与代码的同步管线

docs:sync-exercises 脚本从代码生成习题文档vitepress-plugin-mermaid 渲染图示Artalk 评论 + ViewerJS 图片预览

// 03

关键技术决策

每一条都包含「为什么这样选」与「代价是什么」——这是我理解这个项目的方式。

习题文档自动生成,而非手工维护

代码练习和文档两份手写必然漂移。用 scripts/generate-exercise-docs.mjs 从 code/ 目录派生习题文档,挂在 docs:dev / docs:build 的 pre 钩子里,构建时永远是最新的。代价是脚本要约束练习目录的组织约定,但一次性约定换来永久一致。

以测试作为学习闭环的验收标准

「看懂了」和「写对了」是两回事,文档读起来永远顺畅,因为它已经把思路整理好了——而那正是需要自己完成的部分。每个练习专题都配 go test 测试与参考答案,「会不会」变成二元事实:跑不过就是不会。这也是给 AI 协作预留的接口:让 Agent 改代码、跑测试、看红绿。

VitePress 静态站而非重型知识库系统

Docusaurus / 语雀类平台都考虑过。选 VitePress 是因为内容即仓库里的 Markdown,git 即版本史,构建即静态产物,零运维;Mermaid 插件覆盖架构图需求。代价是检索与互动能力弱,用 Artalk 评论部分补齐。

// 04

我的职责与产出

RESPONSIBILITIES

  • 设计三阶段学习大纲与专题划分
  • 编写 Go 原理详解系列长文(内存布局 / Interface / String 等)
  • 编写 18 个练习专题的测试与参考答案
  • 实现习题文档自动生成脚本与 VitePress 站点配置
  • 整理 k8s 源码教程与主流 Agent 拆解专题

OUTCOMES

  • 形成「计划 → 详解 → 练习 → 验收」的完整学习闭环
  • 习题文档与代码通过脚本保持自动同步,零手工维护
  • 站点内容持续扩展至云原生与 AI Agent 专题

// 05

踩坑与复盘

学习项目最大的敌人是三分钟热度,把体系工程化(测试验收 + 自动生成)本质上是给自己制造「不得不推进」的结构。不足是练习难度梯度还不够平滑,难题清单(如阻塞 Map)仍开着;后续考虑把错题与复盘也纳入站点。

// 06

技术栈

  • Go
  • VitePress
  • Markdown
  • Mermaid

视觉风格