Golang&Python我爱编程魔法书

Go语言超详细学习知识体系

2018-06-14  本文已影响611人  刘丹冰Aceld
Go语言超详细知识体系

Go编程入门

基础语法

环境安装

下载地址 https://golang.google.cn/dl/

GOPATH、GOROOT两个关键环境变量

基础结构

包的概念

程序执行过程--->import package-->init-->main

数据类型和变量

常量const

变量var、:=

基础类型

      bool

      整型

      string字符串

      错误类型 error

复杂数据类型

数组和切片slice

map

struct结构体

interface接口

指针

控制流程

while

if

switch

for

并发与通信

Goroutine 协程

Channel 管道

函数

方法

函数类型

Go标准库常用包

文件 os.file 包

时间和日期及定时器 time包

数据协议解析 encoding/json 、encoding/xml

字符串处理 strings

正则处理  regexp

网络处理 net

锁与同步 sync

入门书籍推荐

《Go语言实战》作者:BrianKetelsen

《Go语言学习笔记》作者:雨痕

《Go语言圣经》

Go常用编辑器及IDE

高手级

Vim+vim-go插件

Goland

https://www.jetbrains.com/go/download/

LiteIDE

https://github.com/visualfc/liteide

sublime

Go高级编程

Go调度器GPM模型

https://www.zhihu.com/question/20862617/answer/27964865

Go的内存布局

https://golang.org/ref/mem(需翻墙)

Go指针高级

http://www.sohu.com/a/168217543_99930294

Go与C混合编程 Cgo模块

https://github.com/golang/go/wiki/cgo

垃圾自动回收机制 GC

Goroutine调度

Channel调度

channel阻塞机制

带缓冲与无缓冲Channel

Go工具链

▼Go指令

go get 下载安装第三方库

git

proxy

go install 安装编译第三方库

https://github.com/astaxie/build-web-application-with-golang/blob/master/zh/01.3.md#go-install

▼编译优化

string和[]byte

逃逸优化

函数内联

GC优化

vendoring

https://golang.org/cmd/go/#hdr-Vendor_Directories

交叉编译

https://rakyll.org/cross-compilation/

Go调用C语言

https://github.com/golang/go/wiki/cgo

Python读取Go

https://blog.filippo.io/building-python-modules-with-go-1-5/

Ruby读取Go

https://c7.se/go-and-ruby-ffi/

Swift读取Go

https://rakyll.org/swift/

Go编译共享库so

https://github.com/jbuberel/buildmodeshared

Go与区块链

go-ethereum(以太坊)

https://github.com/ethereum/go-ethereum

go-ipfs

https://github.com/ipfs/go-ipfs

hyperledger fabric(最热区块链框架)

https://github.com/hyperledger/fabric

eos-go(新一代DPOS机制)

https://github.com/eoscanada/eos-go

Go社区

Go中国社区

https://gocn.io

Go Forum 国外主流论坛

https://forum.golangbridge.org

Go 中国邮件列表

https://groups.google.com/forum/#!forum/golang-china

Gopher大会

Gopher China 2015

Gopher China 2016

Gopher China 2017

Gopher China 2018

GopherChina

http://www.gopherchina.org

其他国家大会列表

https://github.com/golang/go/wiki/Conferences

Go头像制作

https://gopherize.me

6 Go开源项目

▼Web框架

beego(中国出品)

https://github.com/astaxie/beego

gin(轻量级)

https://github.com/gin-gonic/gin

martini

https://github.com/go-martini/martini

echo

https://github.com/labstack/echo

revel

https://github.com/revel/revel

iris

https://github.com/kataras/iris

▼静态建站工具

hugo

https://github.com/gohugoio/hugo

▼WebServer

caddy

https://github.com/mholt/caddy

▼微服务

go-kit

https://github.com/go-kit/kit

go-micro

https://github.com/micro/go-micro

istio

https://github.com/istio/istio

▼人工智能

go-learn(机器学习)

▼游戏

pixel(2d-3d游戏引擎)

https://github.com/faiface/pixel

g3n/engine(3D建模游戏引擎)

https://github.com/g3n/engine

▼云计算容器

moby

https://github.com/moby/moby

rkt

https://github.com/rkt/rkt

Pouch

https://github.com/alibaba/pouch

▼容器编排

Kubernetes

https://github.com/kubernetes/kubernetes

swarm

https://github.com/docker/swarm

▼服务发现

Consul

https://github.com/hashicorp/consul

▼云计算Function

Faas

https://github.com/openfaas/faas

apex

https://github.com/apex/apex

▼DevOps一体化自动运维管理

▼Monitor

Prometheus

https://github.com/prometheus/prometheus

cadvisor

https://github.com/google/cadvisor

ctop

https://github.com/bcicen/ctop

beats

https://github.com/elastic/beats

▼Dev

rancher

https://github.com/rancher/rancher

minikube

https://github.com/kubernetes/minikube

packer

https://github.com/hashicorp/packer

▼Key/Value存储

etcd

https://github.com/coreos/etcd

bolt

https://github.com/boltdb/bolt

▼时序数据库

influxdb

https://github.com/influxdata/influxdb

▼分布式数据库

cockroach

https://github.com/cockroachdb/cockroach

tidb

https://github.com/pingcap/tidb

▼图形数据库

cayley

https://github.com/cayleygraph/cayley

▼其他

noms

https://github.com/attic-labs/noms

vitess

https://github.com/vitessio/vitess

系统工具/命令行工具

ngrok

https://github.com/inconshreveable/ngrok

frp

https://github.com/fatedier/frp

gotty

https://github.com/yudai/gotty

micro

https://github.com/zyedidia/micro

kcptun

https://github.com/xtaci/kcptun

wuzz

https://github.com/asciimoo/wuzz

v2ray-core

https://github.com/v2ray/v2ray-core

termui

https://github.com/gizak/termui

cow

https://github.com/cyfdecyf/cow

teleport

https://github.com/gravitational/teleport

comcast

https://github.com/tylertreat/comcast

wego

https://github.com/schachmat/wego

gogs

https://github.com/gogits/gogs

中间件

traefik

https://github.com/containous/traefik

nsq

https://github.com/nsqio/nsq

codis

https://github.com/CodisLabs/codis

logrus

https://github.com/sirupsen/logrus

groupcache

https://github.com/golang/groupcache

rpc

grpc

       ①https://grpc.io

            ❶rpcx

a. https://github.com/smallnest/rpcx

测试/持续交付

drone

https://github.com/drone/drone

terraform

https://github.com/hashicorp/terraform

goreplay

https://github.com/buger/goreplay

delve

https://github.com/derekparker/delve

图像处理

primitive

https://github.com/fogleman/primitive

caire

https://github.com/esimov/caire

安全

vault

https://github.com/hashicorp/vault

vuls

https://github.com/future-architect/vuls

爬虫

goquery

https://github.com/PuerkitoBio/goquery

文件系统

ransfer.sh

https://github.com/dutchcoders/transfer.sh

seaweedfs

https://github.com/chrislusf/seaweedfs

minio

https://github.com/minio/minio

syncthing

https://github.com/syncthing/syncthing

rclone

https://github.com/ncw/rclone

上一篇下一篇

猜你喜欢

热点阅读