跳转到帖子
  • 游客您好,欢迎来到黑客世界论坛!您可以在这里进行注册。

    赤队小组-代号1949(原CHT攻防小组)在这个瞬息万变的网络时代,我们保持初心,创造最好的社区来共同交流网络技术。您可以在论坛获取黑客攻防技巧与知识,您也可以加入我们的Telegram交流群 共同实时探讨交流。论坛禁止各种广告,请注册用户查看我们的使用与隐私策略,谢谢您的配合。小组成员可以获取论坛隐藏内容!

    TheHackerWorld官方

  • 0

Go 语言优秀资源整理,为项目落地加速


HACK1949

问题

Go 语言优秀资源整理,为项目落地加速

5fe52b07455c7.png

指导原则

  • 简单性

    复杂性把可读的程序变得不可读,复杂性终结了很多软件项目。

  • 可读性

    代码是给人看的,代码阅读时长远超编写。程序必须可维护,那可读是第一步。

  • 生产率

    拥有众多的工具集和基础库,可以很简单方便的完成绝大多数工作。 编译速度足够快,拥有动态语言的高效,但却不会面临动态语言不可靠的问题。 自带编程规范,使得团队代码一致,也帮助开发者发现和避免潜在的错误。

Awesome

  • GitHub Topic for Go
  • Awesome Go
  • golang-open-source-projects - 含描述的中文版 Awesome Go
  • Awesome Go Storage - Go 存储相关开源项目
  • awesome-go-China - 专门收集华人写的开源项目
  • Go Patterns - Go 版本的设计模式
  • sevenelevenlee/go-patterns - 设计模式
  • GoF 设计模式
  • greyireland/algorithm-pattern - 算法模板
  • go-algorithms - Go 版本的数据结构和算法
  • Go 学习之路 - Go 学习资料汇集
  • Go 开发者路线图
  • ReposHub-Go

大牛

Go 语言方面的大牛,或者优秀 Go 项目的组织

  • mattn - 写了数百个 Go 项目,盛产优质项目
  • Unknwon - gogs/macaron 等项目作者,《The Way to Go》译者
  • Jinzhu - gorm/QOR 等作者
  • valyala - fasthttp/fastjson 等作者
  • vmihailenco - go-redis/go-pg 等作者
  • kataras - iris 作者
  • bep
  • spf13
  • Uber - Open Source Software at Uber
  • Gorilla web toolkit
  • Stretchr - Tame your unstructured data
  • Containous
  • lestrrat-go
  • HashiCorp
  • juju
  • tidwall

文档

  • Go 语言设计与实现
  • Go 语言原本
  • Go 101 (中文版)
  • Go 官方入门指南
  • Go 语言高级编程
  • Go 专家编程
  • Go 编程语言
  • Golang 标准库文档(官方/中文)
  • Go 语言标准库 在线阅读
  • 《The Way to Go》中文版
  • Go 语言圣经(中文版)
  • Go语言入门教程
  • Go 实战开发
  • Go Web 应用开发
  • Go 学习技能树
  • 实效 Go 编程
  • Go 语言语法详解笔记
  • Go 语言学习资料与社区索引
  • Go database/sql tutorial
  • GO 命令教程
  • 深入解析 Go
  • Go 语言博客实践
  • 学习 Go 语言
  • Go2编程指南
  • Go database/sql tutorial - Go 数据库(database/sql)开发使用教程
  • Go Web Examples - Go Web 开发示例
  • Go Assembly - 通过示例介绍 Go 汇编功能
  • Ultimate Go - 终极 Go 学习指南,包含大量文档化的代码和程序分析
  • Go 教程 - 腾讯云开发者手册
  • Golang 开发笔记
  • golang-notes
  • The Little Go Book (中文版)
  • Learning Go — from zero to hero
  • go-internals - 深入理解 Go
  • Learn Go with Tests
  • Go基础教程
  • 7天用Go从零实现系列
  • Golang - 100天从新手到大师 - 某培训机构的部分教程内容
  • algo - 107+ 编码面试问题,包括详细的解决方案,测试用例和程序分析
  • over-golang - Go 学习笔记
  • over-algorithm - Go 算法笔记
  • learngo - 1000+ Go 示例、练习和测试
  • go-leetcode - LeetCode 实现
  • 玩转 GO - 《Mastering GO》中文译本
  • leetcode-cookbook - LeetCode in Go

指南

  • Uber Go Style Guide
  • The Go Programming Language Specification (中文老版)
  • 实效 Go 编程
  • Go Code Review Comments
  • Go Code Convention
  • Go FAQ 101
  • Go Details 101
  • Go Tips 101
  • Go Quizzes 101
  • go-advices
  • go-perfbook - 编写和优化Go代码
  • Practical Go: Real world advice for writing maintainable Go programs (Go 语言实践:编写可维护的程序的建议)

文章

  • Go Training - 大量优质 Go 相关文章、视频等资料
  • Go语言爱好者周刊
  • Go 夜读 - Go 标准包、开源项目源代码阅读讲解
  • Go-Questions - Go 语言学习入门和进阶知识
  • Go的50度灰:Golang新开发者要注意的陷阱和常见错误
  • Go 程序的性能优化及 pprof 的使用
  • gops - Go语言程序查看和诊断工具
  • Go源码分析——http.ListenAndServe()是如何工作的
  • GoConvey 框架使用指南
  • GoStub 框架使用指南
  • GoMock 框架使用指南
  • Monkey 框架使用指南

付费教程

  • 基于 Go 语言构建企业级的 RESTful API 服务 - 掘金小册
  • Go语言核心36讲 - 极客时间

成品项目

  • studygolang - Go 语言中文网
  • mkcert - 生成本地 HTTPS 加密证书的工具
  • Rainbond - 基于Docker、Kubernetes等容器技术的开源PaaS
  • NYADB2 - Go 实现的关系型数据库, 值得用于学习
  • EiBlog - 国产 博客
  • pan-light - 不限速的百度网盘客户端, 基于 Go + Qt5 开发
  • BaiduPCS-Go - 百度网盘客户端
  • daily-warm - 每天定时发邮件给你关心的人
  • pipe - 博客平台
  • mdr - 命令行下的 Markdown 阅读工具
  • miniflux - Feed 阅读器
  • 链滴笔记 - 桌面端笔记应用
  • wayback - 网页快照备份

静态网站生成器

  • Hugo
  • jrnl
  • plenti
  • verless

学习项目

  • 1m-go-websockets - 该项目演示了如何用 Go 编写一个可以提供超过一百万个 websockets 连接、运行内存小于 1GB 的服务器
  • Go by Example - 通过实例学习 Go

开源类库

Web 框架

  • Macaron - 一款具有高生产力和模块化设计的 Go Web 框架 国产
  • Beego - 一个使用 Go 的思维来帮助您构建并开发 Go 应用程序的开源框架 国产
  • Gin - 轻量 Web 框架
  • Iris - Web 开发框架
  • Revel
  • echo
  • chi
  • Faygo - 国产
  • Teleport - Socket 框架
  • GoFrame - 国产
  • QOR - 系列应用开发组件包
  • Buffalo
  • DotWeb - 国产
  • REST Layer - REST API framework
  • Honeytrap
  • Ponzu
  • utron
  • muxie
  • Buffalo - 快速生成 Web 项目的开发工具
  • go-web-framework-benchmark
  • fiber - 一种 Express 风格的、基于 fasthttp 的 HTTP Web 框架
  • aah
  • go-zero - 好未来开源的 Web 框架

业务框架

  • GoAdminGroup/go-admin - 后台管理快速开发框架,与 laravel-admin 类似
  • wenjianzhang/go-admin - 基于 Gin + Vue 实现的后台框架
  • gin-vue-admin - 基于 Gin + Vue 实现的后台框架
  • goxygen - 基于 Go, React, MongoDB 技术实现的全栈应用生成器
  • nging - Go语言通用后台管理框架
  • snake - 业务API框架

项目骨架

  • Standard Go Project Layout - Go 项目目录结构示例
  • go-starter - Adobe 的 Go 工程模板
  • go-clean-arch
  • go-rest-api - Go RESTful API Starter Kit

TCP 框架

  • zinx - TCP并发服务器框架

中间件

  • Negroni - Web 中间件
  • csrf - CSRF 中间件
  • handlers - A collection of useful handlers for Go’s net/http package

并发

  • SizedWaitGroup - 并发控制
  • concurrent - concurrency utilities

命令行

  • urfave/cli - 命令行程序构建工具
  • Cobra - 命令行构建包
  • progressbar - 在终端上输出进度条
  • cheggaaa/pb - 终端进度条
  • mpb - 支持多个进度条
  • Color - 命令行文字颜色
  • termui - 终端仪表盘
  • gosu - 以指定的用户权限来运行脚本
  • tui - 终端 UI
  • gotop - 类 top 系统监控显示
  • go-colorable - Colorable writer for Windows
  • go-isatty - TTY 环境判断
  • fzf - 命令行下的文件 Finder
  • flaggy - 命令参数解析
  • go-daemon - daemon 进程包
  • pflag - 命令行参数处理
  • PIXterm - 在命令行终端中绘图
  • WTF - 一个命令行的信息仪表盘,可以定制显示内容
  • go-prompt - 命令行交互式输入
  • peco - 交互式过滤工具
  • termenv - 终端应用程序的高级 ANSI 样式和颜色支持
  • asciigraph - 在终端中绘制 ASCII 字符的图表
  • spinner - 涵盖70多种符号或进度条的控制器
  • tablewriter - 终端中输出表格内容
  • clop - 命令行解析包
  • go-flags - 命令行参数解析
  • termdash - 基于 Go Terminal 的仪表板系统
  • kong - 命令行解析
  • bubbletea - TUI 框架
  • pty - PTY for Go
  • vtclean - 从终端输出字符串中解析出纯文本

终端工具

  • vgrep - 支持滚动分页的 grep
  • GoTTY - 基于Web的命令行实时共享

路由

  • HttpRouter
  • mux - URL 路由和调度器
  • gocraft/web
  • go-querystring - 转换结构体为URL请求参数
  • CleverGo

网络

  • DNS - DNS 库
  • CoreDNS - DNS 服务器
  • RoadRunner - PHP 应用服务器、进程管理器、负载均衡,用于替代 Nginx + FPM
  • GoReplay - 流量收集&回放
  • Sharingan - 滴滴开源的流量录制回放工具
  • Glorp - HTTP 拦截&重放的 CLI 工具
  • p2pspider - 种子嗅探器
  • torrent - BitTorrent 相关工具库
  • rain - BitTorrent 客户端和库
  • httpteleport - Teleports 10Gbps http traffic over 1Gbps networks
  • FIND3 - WiFi 设备发现
  • SubFinder - 子域名发现工具
  • ggz - 短网址服务
  • httpstat
  • grab - 文件下载
  • go-netty - 网络框架
  • gnet - 事件驱动 Go 网络框架
  • httplab - The interactive web server
  • yamux - Multiplexer
  • sftp - SFTP support for the go.crypto/ssh package
  • evio - 事件驱动网络框架(reactor 模式)
  • gaio - 事件驱动网络框架(proactor 模式)
  • httpretty - 在终端上漂亮地打印出 HTTP 请求
  • blocky - 作为局域网 DNS 代理拦截广告
  • lossy - 模拟 net.PacketConn 和 net.Conn 接口的带宽,延迟和数据包丢失
  • go-libp2p - P2P
  • go-ipfs-api - IPFS
  • go-multiaddr - multiaddr

网络代理

  • Caddy - 类似 Nginx 的 Web 服务器
  • Traefik - 反向代理&负载均衡
  • Proxy - golang 实现的高性能代理服务器
  • ProxyPool - 采集免费的代理资源为爬虫提供有效的IP代理
  • frp - 可用于内网穿透的高性能的反向代理应用
  • nps - 一款轻量级、高性能、功能强大的内网穿透代理服务器
  • MOSN - 云原生网络代理
  • Pomerium - 基于身份的反向代理
  • V2Ray
  • V2Fly - V2Ray 的社区版本

HTTP压测

  • Vegeta - HTTP 负载压测工具
  • hey - Web 压测工具
  • bombardier - Web 压测工具
  • go-wrk

HTTP

  • fasthttp - 比 net/http 快 10 倍的 HTTP 工具包
  • Resty - HTTP & REST 客户端包
  • gout - HTTP 客户端
  • gentleman - HTTP 客户端
  • goz
  • UserAgent - 解析 HTTP User Agent
  • purell - URL 规范工具包
  • go-autorest - HTTP 管道请求方式的客户端

WebSocket

  • gorilla/websocket
  • nhooyr/websocket - 官方推荐的包
  • websocketd - Go 开发的一键搭建 WebSocket 服务器命令行工具
  • ws - WebSocket 开发包
  • melody - WebSocket 服务框架
  • neffos - 一个快速且可扩展的 WebSocket 框架

即时通信

  • Centrifugo - 实时消息服务器,可以与任何语言编写的应用程序后端结合使用
  • goim - 支持集群的 im 及实时推送服务
  • Tinode - 即时消息服务器,通过 websocket/JSON 或 gRPC/TCP 等协议传输
  • WebRTC - WebRTC 实现

网关

  • GoKu API Gateway CE - eoLinker 开源的 API 网关

序列化/解压缩

  • vmihailenco/msgpack - 支持 msgpack
  • go/codec - 支持 msgpack/binc/cbor/json
  • golang/protobuf - Go 版本的 Protocol Buffers
  • gogo/protobuf - golang/protobuf 的扩展替代品
  • Objx - 操作 map, slice, JSON 等数据的包
  • snappy - Go 语言版本的 Snappy

RPC

  • gRPC-Go - gRPC 官方包
  • gorpc
  • gorilla/rpc - 构建基于 HTTP 的 RPC 服务,比如 JSON-RPC
  • Lile - gRPC 服务构建包
  • rpcx
  • Twirp - 基于 Protobuf 的 RPC 框架,与 gRPC 类似
  • lile - gRPC 服务生成工具
  • dubbo-go

邮件

  • gomail - 邮件发送包
  • scorredoira/email
  • Hermes - Go 版本的 mailgen 引擎,根据配置生成 HTML 格式的邮件

消息

  • NSQ - 实时分布式消息平台
  • NATS - 云原生消息中间件

文件

  • MinIO - 对象存储服务器
  • Syncthing - 文件同步
  • fsnotify - 文件系统监控工具
  • reflex - 监听文件变更并执行命令
  • gohttpserver - HTTP 静态文件服务器
  • XLSX - Excel 读写包
  • Excelize - 360 开源的 Excel 工具包
  • gopdf - PDF 生成
  • rsc/pdf - PDF reader
  • SeaweedFS - 分布式文件系统
  • go-fastdfs - 分布式文件存储服务
  • Dragonfly - 基于 P2P 的分布式文件系统
  • filetype - 检测文件类型
  • cae - 实现 ZIP/TAR.GZ 解压缩
  • archiver - 多格式支持的解压缩包
  • compress - Optimized compression packages
  • Afero - 文件操作包
  • fsync - 文件/目录同步
  • filebrowser - Web File Browser
  • Bigfile - 文件传输管理系统
  • statik - 静态文件服务
  • filetype - 文件类型与 MIME 检测

模板引擎

  • goTemplateBenchmark - 给各 Go 模板引擎做性能测试,当然也就包含了最全的模板引擎包
  • Jet - 速度很快
  • amber - HTML 模板引擎
  • fasttemplate - Simple and fast template engine for Go
  • quicktemplate
  • mustache
  • Ace
  • Sprig
  • pongo2 - Django 语法风格的模板引擎

代码生成

  • esc

文本处理

Markdown

  • Blackfriday - Markdown 解析器
  • Lute - 结构化的 Markdown 引擎
  • goldmark - Markdown 解析器
  • docx2md - 转换 Word 为 Markdown
  • glamour - 命令行下渲染 Markdown
  • go-md2man - 转换 Markdown 为 man 手册内容

HTML

  • DOM - HTML DOM 节点操作
  • obelisk - 保存 Web 网页为 HTML 单页面
  • html2text - HTML 转 text
  • go-readability - 让 HTML 可读性更高

其他

  • go-runewidth - 字符长度计算
  • gpy - Go 语言汉字转拼音工具
  • go-hashids - hashids 的 Go 版本
  • go-pinyin - 汉语拼音转换工具 Go 版
  • mahonia - 字符集编码转换
  • pangu.go - Go 版本的 pangu,给中英文之间加空格
  • goorgeous - A Go ORG syntax parser to HTML
  • sergi/go-diff - Go 版本的 diff 工具包
  • sourcegraph/go-diff - Go 版本的 diff 工具包
  • Chroma - 代码语法高亮
  • syntaxhighlight - 代码高亮
  • kyokomi/emoji
  • enescakir/emoji
  • golang/freetype - Freetype font rasterizer
  • prose - natural language processing library
  • minify - Web 静态资源压缩(HTML/JS/CSS/JSON)
  • Inflection - Pluralizes and singularizes English nouns
  • autocorrect - 自动给中英文之间加入合理的空格并纠正专用名词大小写
  • bleve - modern text indexing
  • etree - XML 解析&生成
  • feeds - RSS 内容生成
  • gofeed - RSS & Atom feeds 内容解析
  • sitemap - sitemap.xml 生成
  • gogrep - 通过语法树搜索 Go 源码
  • PipeIt - 文本转换,清理和提取工具
  • regexp2 - 全功能正则表达式引擎。如果标准库的 regexp 满足不了你,可以尝试使用 regexp2
  • html2article - 基于文本密度的 html2article 实现
  • hostctl - hosts 命令行管理工具
  • go-shellwords - 解析命令行中字段
  • woke - 检查文本文件中是否存在歧视词汇
  • go-password-validator - 密码强度校验器
  • xurls - 从文本中提取 URL

文档

  • swag - Swagger for Go
  • gin-swagger - Swagger for Gin
  • go-swagger - Swagger 2.0 implementation for go

数学计算

  • decimal - 解决浮点数计算精度问题
  • fixed
  • apd - decimal 包
  • mathfmt - 将 LaTeX 语法的注释转换为数学公式格式

日期时间

  • now
  • when - 自然日期时间解析
  • Carbon - Carbon 时间处理库的 Go 语言实现
  • strftime - 时间格式化

配置

  • GoDotEnv - .env 配置文件解析
  • go-yaml/yaml
  • ghodss/yaml
  • toml - TOML 解析&编码包
  • INI - INI 配置文件解析
  • Viper - 支持 JSONTOMLYAMLHCLJava 等配置文件
  • fig
  • Multiconfig
  • configor
  • envconfig
  • confd - 配置管理工具
  • HCL - configuration language
  • env - 解析 ENV 环境变量到结构体中
  • configor
  • koanf
  • go-toml - TOML
  • butler - Adobe 开源的配置管理系统
  • envsubst - 环境变量替换

爬虫

  • Crawlab - 基于Golang的分布式爬虫管理平台,支持Python、NodeJS、Go、Java、PHP等多种编程语言以及多种爬虫框架
  • Colly - 网络爬虫框架
  • Pholcus - 支持分布式的高并发、重量级爬虫软件
  • go_spider
  • goquery
  • Muffet - 网站链接检查器
  • Creeper

数据库

数据库相关

  • usql - 几乎支持全部 SQL 与 NoSQL 数据库的命令行工具
  • GORM - GORM V2
    • GORM V1
    • gorm2sql - 根据 Model Struct 生成建表语句
  • Xorm
  • XormPlus - Xorm 的定制增强版本
  • GoRose
  • sqlx - database/sql 扩展包
  • dbq - 数据库操作
  • gendry - 滴滴开源的SQL Builder
  • Squirrel - SQL Builder
  • qb - the database toolkit for go
  • redigo - Redis 客户端
  • go-redis
  • mgo
    • globalsign/mgo - The MongoDB driver for Go
    • mgo使用指南
  • amqp - Go client for AMQP 0.9.1
  • kingshard - MySQL Proxy
  • SOAR - 对SQL进行优化和改写的自动化工具
  • Vitess - 用于部署、扩展和管理大型MySQL实例集群的数据库解决方案
  • gh-ost - GitHub 开源的在线更改 MySQL 表结构的工具
  • SQLer - write APIs using direct SQL queries with no hassle, let’s rethink about SQL
  • gocraft/dbr
  • Gaea - 小米开源的基于 MySQL 协议的数据库中间件
  • OctoSQL - 支持多数据库的 SQL 查询工具
  • goose - 数据库迁移工具
  • migrate - 数据库迁移工具
  • ent - An Entity Framework For Go
  • pingcap/parser - 兼容 MySQL 的 SQL 解析
  • xsqlparser - SQL 解析
  • sqlparser - SQL 解析
  • vitess-sqlparser - SQL 解析
  • godb - a Go query builder and struct mapper
  • go-nulltype
  • go-mysql - MySQL 工具集
  • SQLittle - 纯读取 SQLite 文件
  • Bifrost - MySQL 同步到 Redis、ClickHouse 等服务的异构中间件
  • elasticsql - 转换 SQL 成 Elasticsearch DSL

数据库驱动

  • Go-MySQL-Driver - MySQL 驱动
  • go-mssqldb - MSSQL 驱动
  • pq - PostgreSQL 驱动
  • mongo-go-driver - MongoDB 官方出品的 Go 语言驱动
  • clickhouse-go - ClickHouse 官方 Go 语言客户端
  • go-sqlite3 - SQLite3 驱动

数据库引擎

  • etcd - KV 分布式存储
  • InfluxDB - 时间序列数据库
  • Prometheus - 服务监控系统 & 时间序列数据库
  • Thanos - 支持 Prometheus 简化部署、高可用、分布式存储
  • CockroachDB - SQL database
  • Cayley - 图数据库
  • RadonDB - 基于 MySQL 研发的新一代分布式关系型数据库
  • TiDB - 分布式关系型数据库,兼容 MySQL 协议
  • AresDB - Uber 开源的 GPU 驱动的实时分析存储&查询引擎
  • leveldb - LevelDB 的 Go 实现
  • Dgraph - 分布式图数据库
  • rqlite - 基于 SQLite 的轻量级分布式关系数据库
  • gaeadb
  • BadgerDB - KV 数据库
  • LBADD - 用 Go 实现的分布式 SQL 数据库
  • go-memdb - 建立在不可变 Radix 树上的内存数据库
  • VectorSQL - 应用于 IoT 和大数据的 DBMS 数据库,类似于 ClickHouse
  • BuntDB - 基于内存的KV数据库,支持磁盘持久化、ACID事务
  • TinySQL - 迷你分布式关系型数据库
  • groupcache - 分布式缓存
  • Tile38 - GEO 数据库
  • Redcon - 兼容 Redis 协议的自定义 Redis 服务,采用 BuntDB 和 Tile38 实现存储
  • genji - 文档内嵌型数据库

搜索

  • wukong - 全文搜索引擎
  • go-elasticsearch - 官方 ES 客户端
  • elastic - Elasticsearch 客户端
  • go-mysql-elasticsearch - Sync MySQL data into elasticsearch
  • gse - Go 语言分词
  • sego - Go 中文分词
  • gojieba - “结巴"中文分词的 Go 语言版本
  • Riot - 全文搜索引擎
  • simplefts - 超简单的全文搜索引擎实现

表单

  • validator
  • go-tagexpr - 字节跳动开源的结构体标签表达式解释器
  • schema - converts structs to and from form values

Auth

  • Casbin - 权限控制管理
  • pam-ussh - Uber’s SSH certificate pam module
  • jwt-go - JWT for Go
  • jwt - JWT 轻量级实现
  • sessions - 后端 SESSION 服务
  • securecookie - cookie 加密/解密
  • Goth - Multi-Provider Authentication for Go
  • branca - 号称比 JWT 更安全的 token 解决方案

缓存

  • GCache
  • bbolt - key/value store
  • BigCache
  • go-cache - KV 内存缓存
  • gomemcache - Memcache 客户端
  • cache2go

视频

  • goav - FFmpeg 视频处理
  • lal - 直播流媒体网络传输服务器
  • bililive-go - 直播录制工具
  • screego - 通过浏览器共享开发者屏幕

图形处理

  • barcode - 条形码/二维码生成器
  • picfit - 图片操作、裁剪、管理服务器
  • gmfs - 图片操作、裁剪、管理服务器
  • besticon - favicon 服务
  • Caire - 图片操作库
  • Imaging - 图片操作库
  • gocaptcha - 验证码生成
  • base64Captcha - 验证码
  • go-is-svg - 校验是否为 SVG 图片
  • identicon - 根据用户的 IP 、邮箱名等任意数据为用户产生漂亮的随机头像
  • prominentcolor - 识别图片的主要颜色
  • dchest/captcha - 生成和验证图片或音频验证码
  • bimg - 图片处理
  • imaginary - 图片处理服务
  • primitive - 用原始几何图形绘制图形
  • orly - 生成你自己的O’RLY动物书封面

图片识别

  • go-face - 面部识别

图表

  • go-echarts - Echarts 图表库
  • gonum/plot - 图形绘制
  • pinhole - 3D 线框图绘制
  • globe - 地球线框图绘制
  • ink - Go 中的 2D 图形框架
  • go-plantuml - 基于 Go 源码生成 plantuml 图
  • go-diagrams - 通过代码生成图表

构建编译

  • Mage - a Make/rake-like build tool using Go
  • GoReleaser - Go 多平台二进制文件打包、并支持发布到 Homebrew 的工具
  • goxc - 跨平台编译工具(因 1.5 版本开始已自带交叉编译,故已不再维护)
  • Task - 类似于 Make 的构建工具
  • codegangsta/gin - 热编译工具
  • Air - 热编译工具
  • gowatch - 热编译工具
  • Fresh - 热编译工具
  • dh-make-golang - 自动构建 Debian 包
  • pkger - 将静态文件打包成 Go 二进制文件
  • mewn - 静态文件嵌入打包到二进制文件
  • gobinaries - 不用安装Go就能编译安装Go编写的程序
  • NFPM - deb、rpm、apk 等打包工具

优雅升级

  • tableflip - Web 服务升级
  • selfupdate - 二进制文件自动升级

代码分析

  • reviewdog - Code Review 机器人
  • revive - 代码检查分析
  • GolangCI-Lint - 代码质量检查分析工具
  • errcheck - 检测未处理的错误(errors)
  • Staticcheck - 一系列的 Go 代码静态分析工具
  • Golint - Google 官方出品的代码质量检测工具
  • GoReporter
  • go-critic
  • gocloc - 分语言代码行数统计
  • coca - 代码统计分析
  • Go Report Card - Go 项目质量分析报告工具
  • ddsv-go - 死锁检测工具
  • golang/perf - 官方性能量化分析工具
  • GoPlantUML - 为 Go 项目生成 PlantUML 类图
  • gosize - 分析Go二进制文件大小
  • shotizam - 分析 Go 二进制文件的大小并输出到 SQLite3
  • goconst - 查找可以被常量替换的重复字符串
  • sploit - 帮助二进制分析和开发的库

调试

  • go-spew - 变量打印工具
  • Delve - Debug 工具
  • gdlv - Delve 界面版本
  • repr - 变量打印工具
  • pp - 彩色变量打印工具
  • ffmt - 变量打印工具
  • gops - 谷歌官方出品的 Go 程序监控调试工具
  • pprof
  • go-callvis - 可视化Go程序的调用图
  • q - 自动打印变量类型并且格式化输出
  • Litter
  • RDebug - 滴滴开源的一款用于 RD 研发、自测、调试的实用工具
  • debugcharts - Go 内存占用可视化调试工具
  • gcvis - 实时可视化 gctrace
  • pkg/profile
  • statsviz - 在浏览器中实时查看 Go 应用程序运行时统计信息(GC,MemStats 等)

测试

  • GoConvey - 含Web界面的单元测试框架
  • GoMock - 谷歌出品的Mock测试框架
  • GoStub
  • Monkey
  • SuperMonkey - 让私有方法可测
  • Ginkgo - BBD 测试框架
  • fperf - 压测工具
  • gocheck
  • Testify
  • gotests - 根据源码自动生成测试文件
  • TestSQL - 根据 SQL 创建语句生成测试数据
  • httpmock - HTTP Mock
  • Goblin - BDD 测试框架
  • bxcodec/faker - Struct Data Fake Generator
  • gofakeit - 随机数据生成器
  • dmgk/faker
  • go-tprof - 包测试报告生成工具
  • go-fuzz - randomized testing for Go
  • gofight - Testing API Handler
  • sqlmock - SQL 测试
  • silk - 基于 Markdown 的接口测试
  • gock - HTTP mock 测试
  • godog - BDD 测试框架 Cucumber 的 Go 版本
  • endly - E2E(端到端)测试
  • is - 迷你测试框架
  • Terratest - 基础设施测试,比如 Docker
  • agouti - Web 驱动的验收测试框架
  • httpexpect - 端到端 HTTP & REST 测试框架
  • gocov - 测试覆盖率
  • miniredis - Redis 数据测试
  • htmltest - HTML 测试
  • gnomock - 无需 mock 的 Go 代码测试框架
  • gunit - xUnit 风格测试框架

错误处理

  • errors
  • errorx
  • errwrap - Go tool to wrap and fix errors with the new %w
链接帖子
意见的链接
分享到其他网站

这个问题有0个答案

推荐的帖子

此问题没有答案

黑客攻防讨论组

黑客攻防讨论组

    You don't have permission to chat.
    • 最近浏览   0位会员

      • 没有会员查看此页面。
    ×
    ×
    • 创建新的...