golang详细知识体系
时间:2019-02-19
本文章向大家介绍golang详细知识体系,主要包括golang详细知识体系使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
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
- LiteIDE
-
sublime
Go高级编程
Go调度器GPM模型
Go的内存布局
Go指针高级
Go与C混合编程 Cgo模块
垃圾自动回收机制 GC
- Goroutine调度
- Channel调度
channel阻塞机制
- 带缓冲与无缓冲Channel
Go工具链
Go指令
- go get 下载安装第三方库
- git
- proxy
- go install 安装编译第三方库
▼编译优化
- string和[]byte
- 逃逸优化
- 函数内联
- GC优化
- vendoring
- 交叉编译
- Go调用C语言
- Python读取Go
- Ruby读取Go
- Swift读取Go
- Go编译共享库so
Go与区块链
- go-ethereum(以太坊)
- go-ipfs
- hyperledger fabric(最热区块链框架)
- eos-go(新一代DPOS机制)
Go社区
- Go中国社区
- Go Forum 国外主流论坛
- Go 中国邮件列表
- Gopher大会
- Gopher China 2015
- Gopher China 2016
- Gopher China 2017
- Gopher China 2018
- GopherChina
- 其他国家大会列表
- Go头像制作
Go开源项目
▼Web框架
- beego(中国出品)
- gin(轻量级)
- martini
- echo
- revel
- iris
▼静态建站工具
- hugo
▼WebServer
- caddy
▼微服务
- go-kit
- go-micro
- istio
▼人工智能
- go-learn(机器学习)
▼游戏
- pixel(2d-3d游戏引擎)
- g3n/engine(3D建模游戏引擎)
▼云计算容器
- moby
- rkt
- Pouch
▼容器编排
- Kubernetes
- swarm
▼服务发现
- Consul
▼云计算Function
- Faas
- apex
▼DevOps一体化自动运维管理
▼Monitor
- Prometheus
- cadvisor
- ctop
- beats
▼Dev
- rancher
- minikube
- packer
▼Key/Value存储
- etcd
- bolt
▼时序数据库
- influxdb
▼分布式数据库
- cockroach
- tidb
▼图形数据库
- cayley
▼其他
- noms
- vitess
系统工具/命令行工具
- ngrok
- frp
- gotty
- micro
- kcptun
- wuzz
- v2ray-core
- termui
- cow
- teleport
- comcast
- wego
- gogs
中间件
- traefik
- codis
- logrus
- rpc
- grpc
①
❶rpcx
a.
https://github.com/smallnest/rpcx
测试/持续交付
- drone
- terraform
- goreplay
- delve
图像处理
- primitive
- caire
安全
- vault
- vuls
爬虫
- goquery
文件系统
- seaweedfs
- minio
- syncthing
- rclone
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- linux查看软件的安装位置简单方法
- 使用 bind 设置 DNS 服务器的方法
- Linux jdk安装及环境变量配置教程(jdk-8u144-linux-x64.tar.gz)
- centos6.6 下 安装 php7 + nginx环境的方法
- 如何优雅地删除 Linux 中的垃圾文件的方法
- Ubuntu18.04 安装 Anaconda3的教程详解
- VScode Remote SSH通过远程编辑与调试代码
- Ubuntu18.04下安装配置SSH服务的方法步骤
- Openssl实现双向认证教程(附服务端客户端代码)
- centos8使用Docker部署Django项目的详细教程
- ubuntu18.04 安装qt5.12.8及环境配置的详细教程
- 安装Ubuntu20.04与安装NVIDIA驱动的教程
- Ubuntu下安装nvidia显卡驱动(安装方式简单)
- Ubuntu 20.04 apt 更换国内源的实现方法
- Android设计模式之单例模式解析