Go开发者路线图2019,请收下这份指南

640?wx_fmt=jpeg


整理 | Rachel

责编 | 阿司匹林

出品 | AI科技大本营(ID: rgznai100)


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开发者路线图


640?wx_fmt=png


学习资源整理


1、先决条件


1)Go:https://golangbot.com/

2)Dep工具,Go模组:https://github.com/golang/dep

3)SQL:https://www.w3schools.com/sql/default.asp


2、基本开发技能


1)学习Git,在GitHub上建立一些仓库,与他人分享你的代码:https://www.w3schools.com/sql/default.asp

2)了解HTTP(S)协议,request方法(GET,POST,PUT,PATCH,DELETE,OPTIONS)

3)不要害怕使用Google——Google搜索的力量:http://www.powersearchingwithgoogle.com/

4)看一些和数据结构及算法有关的书

5)学习关于认证的基础实现

6)学习面向对象原则


3、命令行工具

1)cobra:https://github.com/spf13/cobra

2)urfave/cil:https://github.com/urfave/cli


4、网络框架/路由

1)Echo:https://github.com/labstack/echo

2)Beego:https://github.com/astaxie/beego

3)Gin:https://github.com/gin-gonic/gin

4)Revel:https://github.com/revel/revel

5)Chi:https://github.com/go-chi/chi


5、数据库


1)关系型

SQLServer:https://www.microsoft.com/en-us/sql-server/sql-server-2017

PostgreSQL:https://www.postgresql.org/

MariaDB:https://mariadb.org/

MySQL:https://www.mysql.com/


2)云数据库

CosmosDB:https://docs.microsoft.com/en-us/azure/cosmos-db

DynamoDB:https://aws.amazon.com/dynamodb/


3)搜索引擎

ElasticSearch:https://www.elastic.co/

Solr:http://lucene.apache.org/solr/

Sphinx:http://sphinxsearch.com/


4)NoSQL

MongoDB:https://www.mongodb.com/

Redis:https://redis.io/

ApacheCassandra:http://cassandra.apache.org/

LiteDB:https://github.com/mbdavid/LiteDB

RavenDB:https://github.com/ravendb/ravendb

CouchDB:http://couchdb.apache.org/


6、对象关系的映射框架


Gorm:https://github.com/jinzhu/gorm

Xorm:https://github.com/go-xorm/xorm


7、高速缓存

GCache:https://github.com/bluele/gcache

分布式缓存

Go-Redis:https://github.com/go-redis/redis

GoMemcached:https://github.com/bradfitz/gomemcache


8、日志


1)日志框架

Zap:https://github.com/uber-go/zap

ZeroLog:https://github.com/rs/zerolog

Logrus:https://github.com/sirupsen/logrus


2)日志管理系统

Sentry.io:http://sentry.io/

Loggly.com:https://loggly.com/


9、实时通讯


Socket.IO:https://socket.io/


10、客户端


1)REST

Gentelman:https://github.com/h2non/gentleman

GRequests:https://github.com/kennethreitz/grequests

heimdall:https://github.com/heimdal/heimdal


2)GraphQL:https://graphql.org/


11、最好知道的库


Validator:https://github.com/chriso/validator.js/

Glow:https://github.com/pytorch/glow

GJson:https://github.com/tidwall/gjson

Authboss:https://github.com/volatiletech/authboss

Go-Underscore:https://github.com/ahl5esoft/golang-underscore


12、测试


1)单元,行为,集成测试

GoMock:https://github.com/golang/mock

Testify:https://github.com/stretchr/testify

GinkGo:https://github.com/onsi/ginkgo

GoMega:https://github.com/onsi/gomega

GoCheck:https://github.com/go-check/check

GoDog:https://github.com/DATA-DOG/godog

GoConvey:https://github.com/smartystreets/goconvey


2)端对端测试

Selenium:https://github.com/tebeka/selenium

Endly:https://github.com/viant/endly


13、任务调度


Gron:https://github.com/roylee0704/gron

JobRunner:https://github.com/bamzi/jobrunner


14、微服务


1)消息代理

RabbitMQ:https://www.rabbitmq.com/tutorials/tutorial-one-javascript.htmlhttps://www.npmjs.com/package/kafka-node

ApacheKafka:https://www.npmjs.com/package/kafka-node

ActiveMQ:https://github.com/apache/activemq

AzureServiceBus:https://docs.microsoft.com/en-us/azure/service-bus-messaging/service-bus-messaging-overview


2)消息总线

Message-Bus:https://github.com/vardius/message-bus


3)框架

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

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


4)RPC

ProtocolBuffers:https://github.com/protocolbuffers/protobuf

gRPC-Go:https://github.com/grpc/grpc-go

gRPC-Gateway:https://github.com/grpc-ecosystem/grpc-gateway


5、Go模式:https://github.com/tmrts/go-patterns


以上就是本期营长为大家推荐的《2019年Go语言开发者指南》,最后为大家献上传送门,预祝大家五一学习愉快,peace~


GitHub项目地址:

https://github.com/Alikhll/golang-developer-roadmap/blob/master/i18n/ReadMe-zh-CN.md


CTA核心技术及应用峰会


5月25-27日,由中国IT社区CSDN与数字经济人才发展中心联合主办的第一届CTA核心技术及应用峰会将在杭州国际博览中心隆重召开,峰会将围绕人工智能领域,邀请技术领航者,与开发者共同探讨机器学习和知识图谱的前沿研究及应用。


更多重磅嘉宾请识别海报二维码查看,目前会议早鸟票发售中(原票价1099元),点击阅读原文即刻抢购添加小助手微信15101014297,备注“CTA”,了解票务以及会务详情。


640?wx_fmt=png


推荐阅读


640?wx_fmt=png

  • 4
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值