Go 开发者 Roadmaps 罗列了所有 Go 语言相关的技术点,如果对整个后端技术栈感兴趣可以参考这里 Backend Roadmaps
这是一个标准 Go 项目的目录结构
- Arrays 的基本用法
- Slices 的基本用法, 此处为 Go 官方的 Slices 详解
- Maps 的基本用法
- 两种从 slice 中删除元素的方法
- 获取或删除 slice 中的最后一个元素
- 从 slice 中删除重复的 item
- 对 map 中的 key 或 value 进行排序
- 比较两个 slices 的内容是否相同
- float 与 string 之间的互转
- int, int64 与 string 之间的互转
- 将 interface 转换为 string
- 将结构体转换为 string
- string 常用操作
- 将数字格式化为千分位的字符串
- Go 正则表达式
- Golang-Regex-Tutorial 这个教程非常全面
- 使用正则对字符串进行替换
- 什么是 Data races, 如何通过 channel 避免 Data races 的发生
- 如何通过 --race 参数检查代码是否存在 Data races 问题
- 等待 goroutines 执行结束
- mutex 互斥锁的使用方法
- Using a Mutex in Go (Golang) - with Examples
- What are channels used for?
- Concurrency in Go with Goroutines and Channel
- 使用 WaitGroup 时如何限制并发请求的数量
- 利用标准库函数实现 int, float64 和 string 的排序
- 自定义 comparator 函数 (一次性排序场景)
- 自定义类型并实现 sort.Interface 接口 (代码可重复的排序场景)
- 对 map 进行排序 (前提是将 key 或 value 转化为 slice 先行排序)
- gin-gonic Gin is a web framework written in Go
- API 文档及示例
- Model binding and validation
- GORM The fantastic ORM library for Golang, aims to be developer friendly
- API 文档及示例
- Go ORM框架 - GORM 踩坑指南
- JSON Formatter & Validator JSON 在线格式化/验证工具
- JSON Grid 将 JSON 转换为表格
- Convert CSV to JSON 在线 CSV 转 JSON
- regex101 正则表达式验证工具
- Epoch Converter Epoch & Unix Timestamp 转换工具
- Go by Example
- yourbasic
- GeeksforGeeks
- Learn Web Programming in Go by Examples
- Learn Go with tests
- Programming Guide of Go
- Golang By Example
- Go tips and snippets
- Go from the beginning
- Practical Go Lessons
- How To Benchmark HTTP Latency with wrk on Ubuntu 14.04
- Benchmarking in Golang: Improving function performance
- Specifying How Fields Are Separated in awk
- Set HTTP client timeout in Go
- 5 structured logging packages for Go
- Golang Echo Tutorial : Build a REST API with Golang Echo and PostgreSQL
- Introduction to Wails - Desktop Apps in Go - Project Structure
- Setup nested HTML template in Go Echo web framework
- Creating Golang cron jobs
- 在gin框架中使用JWT
- Go语言学习之路/Go语言教程
- Develop command line applications in Go with flag package