Go是Google开发的一种静态、强类型、编译型、并发型,并具有垃圾回收功能的类C 编程语言 。2009以开源项目的形式发布,2012年发布1.0稳定版本,距今已经十年了,其性能类似于 Java 和C++,但速度极快,适合搭载于web服务器,用于高性能分布式系统开发。
作为热门的编程语言之一,Go语言吸引了很多关注。根据 TIOBE 编程排行榜,2016年,Go语言成为年度最受欢迎的编程语言;2019年,Go语言的热度不减,仍稳居排行榜前20名。在基于云的服务中,Go语言因其在编译速度和执行性能上的优越性,具有其他编程语言无法比拟的优势。随着云计算的迅速发展,更多基于Go语言的项目正在不断涌现。
今天,营长就为大家推荐了一份来自 GitHub 的2019年Go开发者指南,帮助大家快速入门Go语言。
该指南提供了详细的进阶路线图,列出了学习Go开发所需的各类知识和技能,而且每个知识点也附上啦相应的学习资源。相信无论是零基础的新手,还是对Go语言有一定了解的开发者,都能够有所收获。
Go开发者路线图
学习资源整理
1、先决条件
1)Go:
2)Dep工具,Go模组:
3)SQL:
2、基本开发技能
1)学习Git,在GitHub上建立一些仓库,与他人分享你的代码:
2)了解HTTP(S)协议,request方法(GET,POST,PUT,PATCH,DELETE,OPTIONS)
3)不要害怕使用Google——Google搜索的力量:
4)看一些和数据结构及算法有关的书
5)学习关于认证的基础实现
6)学习面向对象原则
3、命令行工具
1)cobra:
2)urfave/cil:
4、网络框架/路由
1)Echo:
2)Beego:
3)Gin:
4)Revel:
5)Chi:
5、数据库
1)关系型
SQLServer:
PostgreSQL :
MariaDB :
MySQL :
2) 云数据库
CosmosDB:
DynamoDB:
3)搜索引擎
ElasticSearch :
Solr :
Sphinx:
4) NoSQL
MongoDB:
Redis:
ApacheCassandra:
LiteDB:
RavenDB:
CouchDB :
6、对象关系的映射框架
Gorm:
Xorm:
7、高速缓存
GCache:
分布式缓存
Go-Redis:
GoMemcached:
8、日志
1)日志框架
Zap:
ZeroLog:
Logrus:
2)日志管理系统
Sentry.io:
Loggly.com:
9、实时通讯
Socket .IO:
10、客户端
1) REST
Gentelman:
GRequests:
heimdall:
2)GraphQL:
11、最好知道的库
Validator:
Glow:
GJson:
Authboss:
Go-Underscore:
12、测试
1)单元,行为, 集成测试
GoMock:
Testify:
GinkGo:
GoMega:
GoCheck:
GoDog:
GoConvey:
2)端对端测试
Selenium :
Endly:
13、任务调度
Gron:
JobRunner:
14、微服务
1)消息代理
RabbitMQ :
ApacheKafka:
ActiveMQ :
AzureServiceBus:
2)消息总线
Message-Bus:
3)框架
GoKit:
Micro:
4)RPC
ProtocolBuffers:
gRPC-Go:
gRPC-Gateway:
5、Go模式:
以上就是本期营长为大家推荐的《2019年Go语言开发者指南》,最后为大家献上传送门,预祝大家五一学习愉快,peace~
GitHub项目地址: