每天学习一个 Go 语言库!
相关博客:
- flag Go 标准库提供的命令行选项解析库,简单实用。
- go-flags 第三方命令行选项解析库,非常强大。
- go-homedir 不使用 cgo 获取用户主目录的第三方库,支持交叉编译。
- go-ini 解析 INI 配置文件的第三方库。
- cobra 编写命令行程序的库,并提供生成代码的脚手架。
- viper 灵活强大的配置管理工具,支持多种 JSON/TOML/YAML 等多种配置格式,支持热更新。
- fsnotify 监控文件或目录改动的第三方库。
- cast 方便实用的类型转换库。
- log Go 标准日志库。
- logrus 使用非常广泛的开源日志库。
- godotenv
读取项目目录中的 .env 文件设置程序的环境变量。支持多种开发模式
dev/prod
。 - carbon 功能强大的日期时间库,仿 PHP 的同名库。
- email 发送邮件的第三方库。
- dig Uber 出品的依赖注入库。
- gojsonq Go 操作 JSON 数据的库,支持基本操作和花式操作方法。
- message-bus 异步消息通信库。
- watermill 功能丰富的消息通信库。
- wire Google 出品的依赖注入框架,编译前自动生成 Go 代码,无需反射。
- mergo 合并结构体和 map 的库。
- copier 处理相同或不同结构体/map 之间的赋值。
- jennifer Go 代码生成库。
- go-cmp Google 出品的比较库,一般用于测试代码中。
- buntdb Go 实现的内存键值库,支持 JSON 操作和事务。
- gjson 专注于读取 JSON 值的库。
- sjson 专注于设置 JSON 值的库。
- jj 操作 JSON 数据的命令行程序。
- govaluate 计算动态 Go 表达式的库。
- validator 使用最为广泛的数据校验库。
- gopsutil 获取各种系统信息的库。
- gentleman HTTP 客户端。
- plot 绘图库。
- gron 定时任务管理库。
- go-app 使用 Go + Webassembly 编写应用的库。
- zap Uber 出品的高性能日志库。
- zerolog 高性能日志库,专注于 JSON 格式的日志,号称 0 内存分配。
- nutsdb 国人开发的内存键值库,支持备份和还原。
- sqlc 根据 SQL 语句生成相应操作数据库的 Go 代码。
- xorm ORM 库。
- rpc 标准 RPC 库。
- jsonrpc 标准 JSON-RPC 库。
- rpcx 基于标准 RPC 库扩展的功能强大、高性能的 RPC 框架。
- twirp twitchtv 出品的基于 Google Protobuf 的 RPC 库。
- casbin 灵活、强大的权限管理库,支持多种语言。
- fyne Go GUI 框架。
- negroni Go 中间件库。
- cli 命令行程序库,方便编写命令行程序。
- cron 定时任务管理库,对标 Linux 的 crontab 命令。
- mapstructure 结构体和 map 转换库。
- jobrunner 基于 cron 的定时任务管理库。
- gabs JSON 操作库。
- commonregex 收集常用的正则表达式。
- quicktemplate Go 模板库,预先编译为 Go 代码。
- air 监听文件修改,自动编译,重启 Go 程序。提升开发效率。
- goquery Go 的jQuery。
- rxgo 基于pipelines的异步编程库。
- bytebufferpool
基于
sync.Pool
实现的高性能对象缓冲池。 - gotalk 专注于进程间通信的库。
- fasttemplate
一款小型的模板库,可用于替换
strings.Replace
和fmt.Sprintf
。 - reflect
反射标准库
reflect
详解。 - ants goroutine 池。
- tunny 另一个 goroutine 池实现。