Files

42 lines
1.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
id: backend.go.index
title: Go 语言
type: index
domain: backend
stack: [go]
tags: [Go, 后端, 并发]
week: [1, 2, 3, 14]
---
# Go 语言
Go 在本计划里是**加分项**:目标是能独立写出带数据库、鉴权、缓存、部署的后端服务,并能回答常见的 Go 面试题。语法简单、并发好用、部署是一个二进制文件——这些是企业选 Go 的主要原因。
## 学习路线
| 顺序 | 课程 | 级别 | 预计 |
| --- | --- | --- | --- |
| 1 | [语法、类型和接口(对照 TypeScript)](01-basics-types.md) | 基础 | 4 小时 |
| 2 | [错误处理和并发:goroutine、channel、context](02-errors-concurrency.md) | 进阶 | 4 小时 |
| 3 | [测试和工程化:表格驱动测试、httptest、模块、项目结构](03-testing-engineering.md) | 进阶 | 3 小时 |
## 企业场景
- [批量调用第三方接口:并发控制、超时和部分失败](scenarios/batch-third-party-calls.md)
## 面试题
- [Go 面试题(基础 / 进阶 / 场景题)](interview.md)
## 示例代码
- [examples/batch-fetch](examples/batch-fetch/):有并发上限、单次超时、部分失败的批量请求(`go test ./...`)
## 在 16 周计划中
- [第 1 周:Go 基础 + Gin](../../../plan/week01-go-gin.md)、[第 2 周:数据库 + 鉴权](../../../plan/week02-db-auth.md)、[第 3 周:项目一](../../../plan/week03-project1.md)、[第 14 周:可选 Go 网关](../../../plan/week14-backend-extend-deploy.md)
## 官方资料
- Go 官方教程(中文):https://tour.go-zh.org/ ;Effective Go:https://go.dev/doc/effective_go ;Go by Example(中文):https://gobyexample-cn.github.io/