相关文档

官方文档 https://golang.org/doc/
官方类库文档 https://golang.org/pkg/
GO语言基础 http://doc2.aiwaly.com/doc2/web/#/3?page_id=267
Go入门指南 http://www.kancloud.cn/kancloud/the-way-to-go/72432
Go 语言教程 http://www.rm5u.com/go/go-tutorial.html
Go教程https://www.w3cschool.cn/go/

Essential Go is a free book about Go programming language.
https://www.programming-books.io/essential/go/
Go 指南:顶级 Go 框架、IDE 和工具列表 https://mp.weixin.qq.com/s/5q7G6BpeRohX4v2GvvZUAQ

部署安装

搭建Windows下的Go开发环境
http://doc2.aiwaly.com/doc2/web/#/3?page_id=17
linux golang 开发环境安装配置(liteIDE)
http://doc2.aiwaly.com/doc2/web/#/3?page_id=20
几款Golang IDE对比
https://studygolang.com/articles/10759

编码规范

Golang代码规范
http://doc2.aiwaly.com/doc2/web/#/3?page_id=212

beego框架

Golang指南:顶级Golang框架、IDE和工具列表
https://mp.weixin.qq.com/s/hwzfOhxsXMbKcevpV9MFXw
beego开发文档
https://www.kancloud.cn/hello123/beego
beego配置
https://www.jianshu.com/p/99f3ddbde604
beego的配置文件记录
https://www.cnblogs.com/ziyouchutuwenwu/p/3958632.html
beego的session使用方法
http://blog.51cto.com/wangchunyi/1904348
Beego 框架之cookie与session
https://www.cnblogs.com/liaojiafa/p/8137317.html
beego自动化部署
https://segmentfault.com/a/1190000005165491
beego自动化部署
https://studygolang.com/articles/4267

架构

Go 编程实战:如何组织代码、编写测试?
https://www.infoq.cn/article/4TAWp8YNYcVD4t046EGd

Gin框架

Gin 是一个 go 写的 web 框架,具有高性能的优点。官方地址:https://github.com/gin-gonic/gin
Gin 文档中文翻译
https://learnku.com/docs/gin-gonic/2018/gin-readme/3819

基于gin框架搭建的一个简单的web服务
https://www.jianshu.com/p/3227289306e0
1 Golang 微框架 Gin 简介
https://www.jianshu.com/p/a31e4ee25305 以及博客中相关文章
Go语言web框架 gin
http://www.okyes.me/2016/05/03/go-gin.html
2 Gin-Go学习笔记
http://www.cnblogs.com/tudaogaoyang/p/8056186.html
3 go持久化
https://www.jianshu.com/p/015aca3e11ae
4 Gin+Mysql简单的Restful风格的API
https://studygolang.com/articles/9630
5 基于golang gin框架的单元测试
https://studygolang.com/articles/11836?fr=sidebar
go依赖管理-govendor
https://studygolang.com/articles/9785
MorningGo 脚手架gin框架快速生成项目
https://github.com/chenhg5/morningo/blob/master/README_CN.md
go依赖管理-govendor
https://studygolang.com/articles/9785
golang高性能RPC:Apache Thrift安装使用完全攻略
https://studygolang.com/articles/13988
golang主流模块API文档
https://godoc.org/github.com/go-redis/redis
gin框架练习代码
http://doc2.aiwaly.com/doc2/web/#/3?page_id=268

Revel框架

Revel 中文手册 http://www.kancloud.cn/manual/revel/72251


go_import下划线的作用
https://studygolang.com/articles/4356
http://doc2.aiwaly.com/doc2/web/#/3?page_id=254

给golang程序进行一次廋身
https://golangtc.com/t/53982e8c320b5253b5000018

redis调用

go语言使用redis(redigo)
https://cloud.tencent.com/developer/article/1381778
go知名第三方包ssdb
https://cloud.tencent.com/developer/article/1381768
Go语言开发中redis的使用
https://www.jianshu.com/p/1646ff9c9bed

RESTful

RESTful 架构详解
https://www.runoob.com/w3cnote/restful-architecture.html
Go语言开发RESTFul JSON API
https://cloud.tencent.com/developer/article/1165549
go-json-rest框架实现Golang Restful
https://blog.csdn.net/yuyinghua0302/article/details/80238515
go-json-rest
https://github.com/ant0ine/go-json-rest

json实现

Go中如何将json文件的内容映射到struct
https://www.jianshu.com/p/e9ab4ffca69d
golang json 和 struct 的相互转化
https://blog.csdn.net/wangmanjie/article/details/79308651
GoLang中 json、map、struct 之间的相互转化
https://www.cnblogs.com/liang1101/p/6741262.html
Go语言 http发起Get和Post请求示例
https://www.skiy.net/201711204895.html

标准输入输出

fmt.printf 介绍
http://doc2.aiwaly.com/doc2/web/#/3?page_id=74
Golang 读取控制台输入
http://doc2.aiwaly.com/doc2/web/#/3?page_id=75

http请求

go语言下载页面html代码
http://doc2.aiwaly.com/doc2/web/#/3?page_id=21
Golang 代码中绑定Host
http://doc2.aiwaly.com/doc2/web/#/3?page_id=22

golang配置文件读取

Go语言关于XML的读取与生成
http://doc2.aiwaly.com/doc2/web/#/3?page_id=25

golang读取ini配置的pkg(读取配置文件)
http://doc2.aiwaly.com/doc2/web/#/3?page_id=23
Go 配置文件热加载 https://segmentfault.com/a/1190000019436438

golang文件操作

golang的简单文件读写
http://doc2.aiwaly.com/doc2/web/#/3?page_id=40
GO语言实现列出目录和遍历目录的方法
http://doc2.aiwaly.com/doc2/web/#/3?page_id=77
使用go语言复制文件
http://doc2.aiwaly.com/doc2/web/#/3?page_id=79

日志处理

go语言写日志
http://doc2.aiwaly.com/doc2/web/#/3?page_id=76

Golang优秀开源项目汇总

https://github.com/hackstoic/golang-open-source-projects

Case by case

Go 语言从新手到大神:每个人都会踩的五十个坑
http://doc2.aiwaly.com/doc2/web/#/3?page_id=65

测试

Go 笔记之如何测试你的 Go 代码
https://juejin.im/post/5d6d462ef265da03e5234f57

golang读取ini配置的pkg(读取配置文件)
http://doc2.aiwaly.com/doc2/web/#/3?page_id=23
FTP client for Go(lang)
http://doc2.aiwaly.com/doc2/web/#/3?page_id=24
Go语言关于XML的读取与生成
http://doc2.aiwaly.com/doc2/web/#/3?page_id=25
Go语言读写数据库
http://doc2.aiwaly.com/doc2/web/#/3?page_id=26
十条有用的 Go 技术
http://doc2.aiwaly.com/doc2/web/#/3?page_id=29
使用Go语言完成文件夹的MD5计算
http://doc2.aiwaly.com/doc2/web/#/3?page_id=30
golang 使用时间通过md5生成token
http://doc2.aiwaly.com/doc2/web/#/3?page_id=62
crc校验码的计算
http://doc2.aiwaly.com/doc2/web/#/3?page_id=96
Golang中巧用defer进行错误处理
http://doc2.aiwaly.com/doc2/web/#/3?page_id=227
golang访问ad域实例
http://doc2.aiwaly.com/doc2/web/#/3?page_id=253
七牛—关于GO SDK的各种Demo
http://doc2.aiwaly.com/doc2/web/#/3?page_id=39

golang 调用cmd下程序隐藏黑窗口-方法
http://doc2.aiwaly.com/doc2/web/#/3?page_id=60
golang程序在windows上,注册为服务
http://doc2.aiwaly.com/doc2/web/#/3?page_id=213
golang RSA加密解密程序
http://doc2.aiwaly.com/doc2/web/#/3?page_id=83
go结构体的使用
http://doc2.aiwaly.com/doc2/web/#/3?page_id=27
golang的位运算操作符的使用
http://doc2.aiwaly.com/doc2/web/#/3?page_id=28

【Go语言】Beego框架ORM的CRUD操作实现
http://doc2.aiwaly.com/doc2/web/#/3?page_id=221
Go实战–golang生成uuid(The way to go)
http://doc2.aiwaly.com/doc2/web/#/3?page_id=269
Golang简单写文件操作的四种方法
https://www.cnblogs.com/shiluoliming/p/8312928.html
go语言rsa加密
https://github.com/farmerx/gorsa
Go HTML TO PDF转换工具 https://github.com/Mindinventory/Golang-HTMLTOPDF-Converter

influxdb

Go-influxdb基本操作
https://blog.csdn.net/qq_28796345/article/details/77016283

https://www.cnblogs.com/zhzhlong/articles/10019924.html

加密解密

GoLang AES加解密算法
https://www.jianshu.com/p/9c1c8958b279

GUI开发

Go语言图形界面开发:Go版GTK
https://www.cnblogs.com/tennysonsky/p/8433888.html

Glade 编辑器 下载地址
http://www.peardrop.co.uk/

golang 程序运行影藏dos黑窗口
https://blog.csdn.net/u010165367/article/details/79268321

Go 语言编写 CPython 扩展 goPy
https://studygolang.com/articles/3783

geziyor:一款高效的web爬虫框架 https://github.com/geziyor/geziyor

Go+相关项目

蚂蚁王益:Go+ 可有效补全 Python 的不足

GO日新闻
https://gocn.vip/explore/category-14

字符串格式化方式

 url := fmt.Sprintf("https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=%v&corpsecret=%v", stringA , stringB )

beego 接收post json方法

 reqbody := this.Ctx.Input.RequestBody

使用Go代替bash编写脚本 https://presstige.io/p/Using-Go-instead-of-bash-for-scripts-6b51885c1f6940aeb40476000d0eb0fc

Go学习笔记之学习函数式编程前不要忘了函数基础 https://my.oschina.net/snowdreams1006/blog/3106370

可视化Go程序的调用图 https://truefurby.github.io/go-callvis/

awesome-go-cn

awesome-go-cn是一个很棒的Go框架、库和软件的中文收录大全,帮助你第一时间发现优质项目。

它在awesome-go的基础上完成了以下功能

为每个工程添加star,并在通过star进行降序排序。
为每个工程添加star/更新时间/中文文档等相关标签。
提供中文翻译,当然同时也保留了英文原版文档。
定期与原版awesome-go进行同步,保证与国际接轨^_^
快捷访问方式 : https://awesome-go.cn

github访问地址 : https://github.com/yinggaozhen/awesome-go-cn

监控并计算文件的MD5值 wachter
https://studygolang.com/p/wacher-md5

Golang 新手可能会踩的 50 个坑
https://segmentfault.com/a/1190000013739000

golang汉字转拼音
https://github.com/mozillazg/go-pinyin

高频 golang 服务接口超时排查&性能调优 https://mp.weixin.qq.com/s/rDjTqqR0q4VTSQrYFzbR7w
Golang IO 手册 https://github.com/jesseduffield/notes/wiki/Golang-IO-Cookbook
Go GC 20 问 https://mp.weixin.qq.com/s/o2oMMh0PF5ZSoYD0XOBY2Q
分析并解决遗留应用迁移至Kubernetes后延迟增加的问题 https://mp.weixin.qq.com/s/EsPHxO7c550kkcDqdmmRNQ
图解Event Sourcing https://arkwright.github.io/event-sourcing.html
17年的golang、python、php、c++、c、java、Nodejs性能对比(golang python php c++ java Nodejs Performance)
https://www.cnblogs.com/sunsky303/p/6506663.html

golang 自动下载所有依赖包

go get -d -v ./...

-d标志只下载代码包,不执行安装命令;
-v打印详细日志和调试日志。这里加上这个标志会把每个下载的包都打印出来;
./…这个表示路径,代表当前目录下所有的文件。

关注的golang项目

短域名服务
一个简单的短域名生成跳转服务
https://github.com/icowan/shorter

golang 短链接服务
ShortMe is a url shortening service written in Golang.
https://github.com/andyxning/shortme

GitHub - medivhzhan/weapp: GO 微信小程序 SDK
https://github.com/medivhzhan/weapp

高性能 JSON https://dave.cheney.net/high-performance-json.html
钻研 Go 命令行应用 https://dev.to/erybz/diving-into-go-by-building-a-cli-application-28k9
Go 中常见的三个问题 https://medium.com/higher-order-functions/golang-three-common-programming-problems-3ef8baf006af
Go 限流器的使用和实现 https://segmentfault.com/a/1190000023033365
Go 每日一库之 cron https://juejin.im/post/5ef6eed9f265da22a8513d57

简单高效的 Go Worker 池实现 @in.live.in/goworkers-a-simple-efficient-worker-pool-implementation-cfda05813adb"target="_blank"">https://medium.com/@in.live.in/goworkers-a-simple-efficient-worker-pool-implementation-cfda05813adb
Golang 限流器实现 https://blog.lpflpf.cn/passages/time-limiter
Gox 语言中用代码绘图显示在图形界面中并让它实现自动旋转效果-GX39 https://www.jianshu.com/p/30c7b847e36d
一个用于从环境变量解析结构标记的类库 https://github.com/sethvargo/go-envconfig
一个自定义 Go 包的 import path 的命令行工具 https://github.com/razonyang/gopkgs

如何做压测 dbq vs sqlx vs gorm @rocketlaunchr.cloud/how-to-benchmark-dbq-vs-sqlx-vs-gorm-e814caacecb5"target="_blank"">https://medium.com/@rocketlaunchr.cloud/how-to-benchmark-dbq-vs-sqlx-vs-gorm-e814caacecb5
体验范型下的 Go 错误处理 https://deedlefake.com/experimenting-with-error-handling-via-generics-in-go.html
功能全面的 Go 性能分析器 fgprof https://github.com/felixge/fgprof
介绍如何在 Go 中生成和使用 kafka 消息 https://www.aaronraff.dev/blog/an-introduction-to-producing-and-consuming-kafka-messages-in-go
Go time 格式化的一个大坑 https://utcc.utoronto.ca/~cks/space/blog/programming/GoTimeHasLocation

Gitea 1.12.0 and 1.12.1 are released https://blog.gitea.io/2020/06/gitea-1.12.0-and-1.12.1-are-released/
CNCF 宣布首个中国原创项目 Harbor 毕业 https://mp.weixin.qq.com/s/-cKRF9WKEtF1mDMiiLE0Hg
抽丝剥茧—Go 哈希 Map 的鬼魅神功 https://mp.weixin.qq.com/s/EPq2cAR587h4P--Jj65fBw
Golang 定时器底层实现深度剖析 https://gocn.vip/topics/10587
Golang 技巧之默认值的设置 https://mp.weixin.qq.com/s/juvg95GFhuhK92s1XLDLnw

在双核 RISC-V 上玩转 Go 调度器 https://embeddedgo.github.io/2020/06/21/playing_with_go_schedulers_on_a_dual-core_risc-v.html
Kubernetes 服务部署最佳实践: 如何提高服务可用性 https://gocn.vip/topics/10589
Prometheus 踩坑集锦 https://mp.weixin.qq.com/s/7lDC26iwxZUEO-lrHrP1qw
TiDB 异构数据库复制最佳实践 https://gocn.vip/topics/10586
Golang 熔断器 https://blog.lpflpf.cn/passages/circuit-breaker/

Go 的数据科学相关资源

GopherDS-Resources首页、文档和下载 - 基于 Go 的数据科学相关资源 - 开源中国社区
https://www.oschina.net/p/resources

这是一个维护良好的和开发中的工具,包,库等的策展列表,内容与使用Go语言做数据科学相关。
GopherDS,这个项目主要是与基于Go的数据科学的工具和学习相关。resources里面存放了收集的基于Go做数据科学项目的相关资源。
运算(Arithmetic):
math - Stdlib 数学函数。

math/cmplx - cmplx 安装包为负数提供基本常数和运算功能。

github.com/gonum/floats - 一套处理 float64 切片的辅佐程序。

github.com/gonum/optimize - Go 语言的优化包。

分类(Classification):
github.com/jbrukh/bayesian - Naive Bayes 分类。

github.com/datastream/libsvm - 基于 LIBSVM 3.14 派生出来的 libsvm golang。

集群(Clustering):
github.com/salkj/kmeans - Go 的现用 Kmeans 算法包。

计算机系统验证(CSV):
encoding/csv - Stdlib CS 功能。

github.com/go-hep/csvutil - 一组用便捷方式处理 CSV 数据文件的 s 和 funcs。

github.com/go-hep/csvutil/tree/master/csvdriver - databases/sql 的 CSV 文库。

分布式数据分析/传递方式(Distributed Data Analysis/Pipelining):
github.com/pachyderm/pachyderm - 集装箱式数据分析 http://pachyderm.io

github.com/chrislusf/glow - Glow 是 Go 的易于使用的分布式计算系统,与 Hadoop Map Reduce, Spark, Flink, Storm 等相似。

github.com/chrislusf/gleam - 另一个基于 Go 的分布式执行系统。

github.com/flowbase/flowbase - 基于 Flow 的 Go(Golang)编程微框架。http://flowbase.org

github.com/scipipe/scipipe - Go (Golang) 的工作流系统,受 Flow-based Programming 启示。http://scipipe.org

通用数据整理(General data munging):
github.com/kniren/gota - 数据帧。

github.com/gopherds/gophernotes - Jupyter 笔记本的 Go 内核。

通用目的性机器学习(General purpose machine learning):
github.com/sjwhitworth/golearn - GoLearn 是 Go 的“电池包含”的机械学习文库。

github.com/cdipaolo/goml - goml
是完全用 Golang 写的机器学习文库,它可以让开发人员将机器学习安装到他们的应用中。

github.com/xlvector/hector - Golang 的机器学习文库。目前,它可以用来解决二元分类问题。

图表(Graphs):
github.com/gyuho/goraph - 图表包能实现图形数据结构和算法。

github.com/gonum/graph - 这是 Go 语言的广义图形包。

github.com/cayleygraph/cayley - Cayley 是一个开源图表,受 Freebase 和 Google’s Knowledge Graph 后的图形数据库启发。

JavaScript对象符号(JSON):
encoding/json - Stdlib json 功能。

github.com/tidwall/gjson - 一个 Go 开发包,提供了非常快速和简单的方式来获得一个JSON文档的值。

github.com/pquerna/ffjson - ffjson 为 Go 结构产生 MarshalJSON 和 UnmarshalJSON 功能。

矩阵/线性代数(Matrices/Linear Algebra):
github.com/gonum/lapack - 安装包收集器,为 Go 语言提供 LAPACK 功能。

github.com/gonum/blas - 安装包收集器,为 Go 语言提供 BLAS 功能。

github.com/gonum/matrix - Go 语言的矩阵包。

神经网络(Neural Networks):
github.com/tleyden/neurgo - Go 的神经网络。

github.com/fxsjy/gonn - GoNN 是 Go 的执行器,包括 BPNN, RBF, PCN。

github.com/NOX73/go-neural - golang 的神经网络执行。

自然语言处理(NLP):
github.com/advancedlogic/go-freeling - Freeling 3.1 的局部端口。(http://nlp.lsi.upc.edu/freeling/)

github.com/endeveit/enca - libenca 的最小 cgo 绑定。

github.com/Lazin/go-ngram - Go 的N-gram index。

github.com/reiver/go-porterstemmer - Porter Stemming Algorithm 的 Go 清理指令。

github.com/blevesearch/segment - Unicode Text Segmentation 的Go 文库,Unicode Standard Annex #29 中有描述。

https://github.com/kljensen/snowball - Go 执行的 Snowball 词干 NLP。

github.com/sajari/word2vec - word2vec 是 Go 包,提供查询 word2vec 模式的功能。

Non-SQL 数据库交互(Non-SQL Database Interactions):
gopkg.in/mgo.v2 - mgo 是 Go 语言的 MongoDB 驱动器。

github.com/gocql/gocql - Go 编程语言最快最强大的 Cassandra 代理。

github.com/go-redis/redis - Golang 的 Redis 代理。

github.com/garyburd/redigo - Redis 的 Go 代理。

github.com/tsuna/gohbase - Pure Go HBase 代理。

绘图/仪表板(Plotting/dashboarding):
github.com/gonum/plot - 建立和绘制图的API。

github.com/gigablah/dashing-go - 实时仪表板的一个端口。

概率/统计/实验(Probability/statistics/experiments):
github.com/gonum/stat - Go 的 数据包。

github.com/montanaflynn/stats - 具常用功能的数据包,Golang 标准库缺失。

github.com/URXtech/planout-golang - Go 中的 Planout 译码。

github.com/peleteiro/bandit-server - Bandit-server 是一个 Multi-Armed Bandit api 服务器,它不需要配置也没有持久化存储。

回归(Regression):
github.com/sajari/regression - 多元线性回归。

github.com/glycerine/zettalm - 在 zettabytes 数据中建立线性回归模型的 Go 编码。

SQL-like 数据交互(SQL-like Database Interactions):
databases/sql - sql 包围绕 SQL(或 SQL-like)数据提供通用接口。

github.com/Boostport/avatica - Go database/sql
package 的 Apache Phoenix/Avatica 驱动。

github.com/lib/pq - Go 的 database/sql
安装包的纯 Go postgres 驱动。

github.com/go-pg/pg - Fast PostgreSQL 代理 and ORM。

github.com/jackc/pgx - 纯Go PostgreSQL 驱动,它提供性能提升和更多的功能,同时保持数据库database/sql
兼容。

github.com/go-sql-driver/mysql - Go’s database/sql
安装包的 MySQL-Driver 。

github.com/mattn/go-sqlite3 - sqlite3 驱动,符合内置 database/sql
接口。

github.com/lukasmartinelli/pgclimb - 从 PostgreSQL 的数据导出成不同的数据格式 (JSON, JSON Lines, CSV, XLSX, XML) 或使用 Golang 模板。

github.com/lukasmartinelli/pgfutter - 将 CSV 和 JSON 导入 PostgreSQL 的简单方法。

github.com/omniscale/imposm3 - 将 OpenStreetMap 数据导入 PostgreSQL/PostGIS 数据库。

网页抓取(Web Scraping):
github.com/yhat/scrape - Go 网页抓取的简单高效接口。

github.com/cathalgarvey/sqrape - 带有 CSS and Go 反射的简单 Query Scraping 。

建议(Proposed):
Go 自身的多为切片 (Proposal)。

一个强大的(和并发)安装包,处理数据缩小/压缩适宜 (gonum/optimize 会提供很好的基础)。

一个强大的(和并发)安装包,描述带有累赘参数的统计模型(Bayesian and frequentist) 等。

A/B 测试的 Go 安装包。

有数据记录查询的数据库。灵感可以从 Rich Hickey 的 Datomic 数据库抽取,但以开源形式。

一个分布式计算的数据记录查询系统。类似于 Cascalog 的Hadoop 系统, 但取而代之以 Go 工具整合。

收藏资料类

业务压力一大就宕机?一文带你搞懂限流熔断! https://segmentfault.com/a/1190000037435267

又一道比较运算符相关的面试题让我明白基础很重要 https://mp.weixin.qq.com/s/sKlWw6XjAgCpDqUb02qplQ
用Go实现安全可靠的聊天客户端 https://github.com/coyim/coyim

文档更新时间: 2020-10-15 03:05   作者:月影鹏鹏