Go (Golang) 2025 学习计划:从何开始学习

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

Go (Golang) 2025 学习计划:从何开始学习



Go (Golang) 是 2025 年增长最快的编程语言之一。由 Google 开发,它结合了 Python 的简洁性和 C 语言的性能。如果你想进入后端、微服务或 DevOps 的世界,Go 将是你的最佳选择。我们为初学者分解了逐步学习计划。



1. 掌握语法和基本结构(1-2 周)

从官方 Go 教程开始 —— A Tour of Go。它是交互式的,只需几个小时即可完成。同时阅读《The Go Programming Language》(Donovan & Kernighan)或其翻译版本。

  • 变量、数据类型、常量
  • 控制结构:if, switch, for
  • 函数、多返回值
  • 包和导入


2. 理解 Go 的独特概念(2-3 周)

Go 与其他语言不同 —— 不要试图沿用 Python 或 Java 的习惯。专注于:

  • Goroutine —— 用于并发的轻量级线程
  • Channel —— 在 goroutine 之间安全传输数据
  • 接口 —— 隐式实现,鸭子类型
  • 错误处理 —— 无异常(返回 error)
  • 切片和映射 —— 动态数据结构

在 Exercism 上练习任务 —— 那里有代码检查和导师评审。



3. 编写第一个项目(3-4 周)

没有实践的理论是空洞的。从简单的 CLI 应用程序开始,逐步增加复杂度:

  • 第 1 周: 用于统计文件中单词数量的 CLI 工具(使用 os, bufio, flag)
  • 第 2 周: 带有一个路由的 HTTP 服务器(net/http 包)
  • 第 3 周: 用于笔记的 REST API(JSON, 文件操作)
  • 第 4 周: 添加数据库(通过 go-sqlite3 使用 SQLite)


4. 学习标准库(2 周)

Go 以其强大的标准库而闻名 —— 不要急于安装第三方依赖。务必掌握:

  • net/http —— 创建服务器和客户端
  • encoding/json —— 序列化/反序列化
  • sync —— 互斥锁、WaitGroup、原子操作
  • context —— 超时和操作取消
  • testing —— 编写测试和基准测试


5. 深入现代技术栈(4-6 周)

当基础打好后,转向 2025 年的实际工具:

  • 框架: Gin、Echo 或 Chi 用于 HTTP 服务
  • 数据库: 通过 pgx 使用 PostgreSQL,通过 go-redis 使用 Redis
  • 微服务: gRPC、protobuf、RabbitMQ
  • DevOps: Docker 容器

推荐库