Go 语言
Go 语言,是一门新生语言,从其出现就备受大家的喜爱。 // 中文文档 & Go 语言学习之路
- 数据类型( 反射 ):变量和常量 _ 运算符 _ 流程控制
- 面向函数编程( 作用域 / init 函数 ) _ defer 语句 _ 错误处理
- 高阶函数、匿名函数 & 闭包
- 数据结构和算法:数组 / 切片 — Map / sync.Map( go 1.9 )
- 面向对象编程:结构体( 方法 ) — 接口( 空接口 / 类型断言 ) — 指针
并发编程:协程 goroutine( sync.WaitGroup / revocer() ) _ channel / 多路复用 select
- ( 竞态 )锁( sync.Mutex / sync.RWMutex )
- 并发控制:singleflight
- 高性能的协程池:ants
网络编程(
基于 TCP 协议的 Socket 编程):数据包 - Mac 地址 & IP 地址 / 域名( Url、DNS )- 端口
- Http 编程:net/http 包 / WebSocket
Go 工程化实践
路由注册:Gin 框架 _ GinSkeleton _ GinSkeleton-Admin /
Beego/Iris/Echo
- 中间件:JWT / 常见的限流策略
- 参数校验:validator 包
- 静态代码检查 golangci-lint
- 优雅的关机和重启 gin 项目
- 使用 swagger 生成接口文档
微服务