Menu
CoddyTech
学习路径

Go(Golang)开发者学习路线

想成为 Go 开发者,该按什么顺序学:先学这门语言,一直学到接口、泛型、goroutine 和通道,再学命令行、Git 和 SQL,然后是面试必考的数据结构与算法,以及团队能长期维护的代码。这是做后端服务和云基础设施的基础。免费、动手实践,在浏览器里就能学。

222,225+ 名学习者已报名这些课程

664 节课680 个挑战3,164 道测验题

Go 开发者学习路线,一步一步来

17 门课程6 个单元664 节课680 个挑战3,164 道测验题

每一步都由现有的 Coddy 课程组成,每个“开始”按钮都会以 Go 打开课程。你可以按顺序学,也可以从自己欠缺的那一步开始;进度按课程分别保存。

  1. 1
    开始这一步开始共三个单元。Fundamentals 讲类型、控制流、函数、指针、数组、切片、映射、结构体和错误;Logic & Flow 讲方法、接口、错误包装、panic 和 recover、包和时间;名为 Object Oriented Programming 的单元讲没有类时面向对象意味着什么(结构体、方法、隐式接口、嵌入),然后是泛型、goroutine、通道和 select、io.Reader 和 encoding/json,以及设计模式。Go 的第一个意外是语法如此之少,第二个是错误是每次调用都要检查的值;这两点都要认真学好,因为 Go 的代码审查期待的就是地道的 Go 写法。开始专属页面
  2. 2
    开始这一步开始文件和路径、通配符、grep、管道和重定向、权限、环境变量和 shell 脚本。go 命令本身就是终端工具(go build、go test、go mod tidy),Go 服务运行在 Linux 容器里,很多 Go 程序本身也是命令行工具。环境变量在这里很实用:设置 GOOS 和 GOARCH,就能在一台笔记本上为另一个平台交叉编译出二进制文件。开始专属页面
  3. 3
    开始这一步开始暂存、提交、.gitignore、分支、合并与冲突、撤销错误和远程仓库。Go 比大多数语言更依赖 Git:一个模块的导入路径通常就是它的仓库地址,v1.2.0 这样的模块版本就是 Git 标签。弄懂提交和远程仓库的原理,go get 就不再神秘。开始专属页面
  4. 4
    开始这一步开始在真实的表上练习筛选、排序、连接、分组、聚合、子查询、WITH 子句和窗口函数。Go 社区倾向于手写 SQL:标准库的 database/sql 直接执行你写的查询,sqlc 等工具能从纯 SQL 文件生成 Go 代码,所以你和数据库之间往往没有 ORM。开始专属页面
  5. 5
    开始这一步开始栈、队列、链表、二叉树和哈希表,每一种都先用 Go 从零实现,再用来解题。Go 的内置结构刻意很少:切片就能当栈,映射就是哈希表,container 包除了双向链表、环形链表和堆函数之外几乎没有别的,所以用带指针字段的结构体加 nil 检查来实现一棵树,是再普通不过的 Go 代码。开始
  6. 6
    开始这一步开始先做递归挑战,再用 Go 实现冒泡、选择、插入、归并和快速排序,这些排序都能在 Coddy 的算法可视化工具里看到动画。学完再读标准库会有不同的理解:sort.Slice 不稳定而 sort.SliceStable 稳定,slices.Sort 用的是模式消除快速排序(pdqsort)。归并排序也是练习把任务分给多个 goroutine 的理想入门题。开始
  7. 7
你将获得
学编程所需的一切

在实践中学习

编写真实代码、查询数据库、搭建网站、掌握 AI 提示词。我们的互动课程涵盖现代开发者需要的每一项技能。

playground.js
代码编辑器
1const greeting = "Hello, Coddy!"
2function sayHi(name) {
3    return greeting + " " + name
4}
5
bottombar Collapse icon
测试 #1test Case Success icon
测试 #2test Case Success icon
测试 #3test Case Failure icon
输入
"Alex"
输出
"Hello, Coddy! Alex"

打造你的连胜

坚持下去,看着自己不断进步!记录每天的编程习惯,用冻结天数保护连胜,每天打卡都能赢取奖励。

12 天连胜

明天再来,保持你的连胜!

fire Filled icon
left icon

January 2026

right icon

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

21

22

23

24

25

26

27

28

29

30

product Double Or Nothing icon

加倍或归零

第 5 天,共 7 天

fire Freeze icon

连胜冻结

2 left

随时随地写代码

随时随地继续你的编程学习旅程!无需配置,无需下载:打开就能写代码。支持 iOS、Android 和 Web,评分高达 4.9 星。

Python
7连胜
250分数
5能量
变量
journey Hex Done Base iconjourney Hex Done Shadow iconjourney Hex Done Top iconjourney Lesson Done icon
journey Path Right Done icon
journey Hex Done Base iconjourney Hex Done Shadow iconjourney Hex Done Top iconjourney Lesson Done icon
journey Path Left Done icon
journey Hex Active Base iconjourney Hex Active Shadow iconjourney Hex Active Top iconjourney Lesson Theory Challenge icon
继续
journey Path Right icon
journey Hex Locked Base iconjourney Hex Locked Shadow iconjourney Hex Locked Top iconjourney Lesson Theory Challenge icon
journey Path Left icon
journey Hex Locked Base iconjourney Hex Locked Shadow iconjourney Hex Locked Top iconjourney Lesson All icon
学习旅程
目标
排行榜
个人主页
4.9
星星星星星
评分

你并不孤单

在全球排行榜上一较高下,邀请好友赢取奖励,为彼此的成就喝彩。和好友一起编程更有趣!

挑战者联赛
挑战者联赛前 7 名晋级
leaderboard First icon1
avatar 1 icon
fire Filled icon
Alex7+ Days
2840
leaderboard Second icon2
avatar 2 icon
fire Filled icon
Jordan7+ Days
2650
leaderboard Third icon3
avatar 3 icon
fire Filled icon
Sam7+ Days
2420
4
avatar 4 icon
Casey
2180
5
avatar placeholder icon
fire Filled icon
Morgan7+ Days
1950
leaderboard Arrow Up icon晋级区leaderboard Arrow Up icon

多种学习方式

阅读、收听、自我测验、问 AI,或者查阅学过的任何内容。每节课都配合你的节奏。

变量入门
音频

变量是一个有名字的容器,用来存储值,方便你在程序后面引用。

在 Python 中,创建变量只需写下名字、一个等号,再写上要存储的值。

值可以随时间变化。给这个名字重新赋值,它就会指向新的值。

1xSarah

获得证书

每完成一门课程都能获得证书。把证书添加到你的 LinkedIn 个人资料和简历中,向雇主展示你的编程能力。

Coddy结业证书
兹证明张三已成功完成
python iconPython 基础
已验证
日期2026年1月
LinkedIn添加到 LinkedIn

为什么在 Coddy 上跟着这条 Go 路线学

  • Go 是云基础设施的语言。Docker、Kubernetes、Terraform 和 Prometheus 都是用 Go 写的,许多后端服务和命令行工具也是,所以 Go 岗位集中在后端、平台和 DevOps 团队。这条路线从第一天起就培养这些团队看重的能力。
  • 并发是课程的正文,不是附录。goroutine、通道、select、互斥锁和 sync.WaitGroup 都在 Go 课程里讲,还有让 Go 代码经得起审查的惯用写法:用嵌入代替继承,错误要包装、要检查,接口要小。课程最后是一个把数据保存为 JSON 的图书馆项目。
  • 用 Go 做面试练习。栈、队列、链表、二叉树和哈希表,递归挑战和五种排序,全部用 Go 讲解,你练习的就是你想靠它找工作的那门语言。
  • 自动评分、有提示、无需安装。每节课最后都有一道由测试用例评分的 Go 挑战;没通过时,Bugsy 会指出问题所在,goroutine 的 bug 也不例外,但不会替你写出修复代码。大多数课程结束时都能拿到免费证书,也不需要安装 Go 工具链:一切都在浏览器里运行。

关于成为 Go 开发者的常见问题

成为 Go 开发者需要多长时间?

零基础的话,每天学一小时左右,大约六到十二个月能达到初级岗位面试的水平;如果已经会其他语言,会快很多,因为 Go 本身很小。在这条路线上,Go 课程需要八到十周,命令行、Git 和 SQL 加起来大约一个月,数据结构和排序两步再用两个月。之后用 net/http 和数据库自己写一个小服务,这正是 Go 团队招人时看重的工作。

Go 适合作为软件工程师的第一门语言吗?

适合。这门语言小到可以完整学会,gofmt 和编译器能消除一大类新手错误和代码风格之争,而错误是你必须检查的普通值,这能培养细心的习惯。代价是入门资源比 Python 或 JavaScript 少,工作机会也集中在后端和基础设施岗位。

除了 Go,Go 开发者还需要会什么?

命令行、Git 和 SQL,这条路线都会讲;然后是 Go 的运行环境:HTTP 和 JSON API、Docker 和 Kubernetes、关系型数据库,以及如何通过日志、指标和性能分析观察一个正在运行的服务。Go 的标准库已经覆盖了 Web 层的大部分内容,所以学完这条路线后,下一步通常是用 net/http 写一个真实的服务,而不是去学大型框架。

Go 有类和面向对象编程吗?

没有类,也没有继承,但面向对象代码要解决的问题它都能解决:带方法的结构体,类型无需声明就能满足的接口,以及用来复用行为的嵌入。Go 课程中名为 Object Oriented Programming 的单元讲的正是这些,也就是组合优于继承,这就是 Go 代码在实际工作中的组织方式。

这条路线上哪门课程不是用 Go 讲的?

只有一门:整洁代码目前只有 Python 版本,所以它列在各个步骤之后,而不是放在第七步。Go 用 gofmt 解决了大部分风格问题,剩下的正是那门课程讲的内容:命名、函数长度以及职责放在哪里。Go 的一句格言说得很直接:清晰胜过巧妙。其余每一步,包括面向对象项目和编程题,都用 Go 讲。

这条 Go 路线免费吗?

免费。路线上的每门课程都免费:课程内容、浏览器里的 Go 编辑器和 Linux 终端、由测试评分的挑战、Bugsy 的提示以及证书。Pro 取消每日能量限制并提供无限次 AI 帮助,但这条路线上没有任何内容需要它。

完成软件工程师路径能获得证书吗?

能。完成每一步,你就能获得整条软件工程师路径的一张免费证书。证书会列出你沿途完成的每门课程,并链接到每门课程各自的证书,任何人都能核实上面列出的每项技能。你可以把它添加到 LinkedIn 个人资料。这是 Coddy 颁发的结业证书,不是经过认证的学历资格。

其他学习路径

同样的课程,按不同职业方向编排。进度会保留:在一条路径上完成的课程,在所有包含它的路径上都算完成。

全部学习路径
Coddy 编程语言插图

免费开始软件工程师路径

开始学习