42 lines
1.6 KiB
Markdown
42 lines
1.6 KiB
Markdown
---
|
||
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/
|