在 2020年 成为一名 Go 开发者的路线图:
在下边有一个路线图,如果你想要成为一名Go语言的开发者的话,你可以沿着这张图里面的路径去学习,里面记录了一些你可能也想学习的库。当你问到:”我想成为一名Go语言开发者,接下来我要学些什么?“,我做的这个路线图就是一个很好的建议。
English 日本語版
本路线图的目的是让你看到学习Go语言的一个全景图。在你对接下来要学习什么感到困惑的时候,这个路线图会给你一些指导,而不是鼓励你去选择当下流行的东西。你需要逐渐了解为什么一个工具可能会比另一个工具更适合某些场景。但请记住,流行的东西并不意味着一定适合你的工作。
如果您喜欢或者正在使用这个项目来学习或者开始你的计划,请给我一个 Star,谢谢!
先决条件
GoSQL通用开发技能
学习GIT,在GitHub上建立一些仓库,与其它人分享你的代码了解 HTTP(S) 协议,request 方法(GET, POST, PUT, PATCH, DELETE, OPTIONS)不要害怕使用Google,Google 搜索的力量看一些和数据结构以及算法有关的书籍学习关于认证的基础实现面向对象原则等等命令行工具
cobraurfave/cli网页框架 + 路由
EchoBeegoGinRevelChi数据库
关系型 SQL ServerPostgreSQLMariaDBMySQLCockroachDB 云数据库 CosmosDBDynamoDB 搜索引擎 ElasticSearchSolrSphinx NoSQL MongoDBRedisApache CassandraRavenDBCouchDB对象关系映射框架
GormXorm高速缓存
GCache分布式缓存 Go-RedisGoMemcached日志
日志框架 ZapZeroLogLogrus 日志管理系统 Sentry.ioLoggly.com 分布式追踪 Jaeger实时通信
Socket.IOAPI 客户端
REST GentlemanGRequestsheimdall GraphQL gqlgengraphql-go最好知道
ValidatorGlowGJsonAuthbossGo-Underscore测试
单元、行为和集成测试 GoMockTestifyGinkGoGoMegaGoCheckGoDogGoConvey 端对端测试 SeleniumEndly任务调度
GronJobRunner微服务
消息代理 RabbitMQApache KafkaActiveMQAzure Service Bus 构建事件驱动型服务 WatermillMessage-Bus 框架 GoKitMicrorpcx RPC Protocol BuffersgRPC-GogRPC-GatewayTwirpGo-模式
如果您认为该路线图有待改进,请务必提交PR或者发Issue。当然,我也会持续地改进它,所以你可以给这个仓库点个 Star 以便于再次访问。
想法来源于 : ASP.NET Core Developer Roadmap
这个路线图是用 Draw.io 做的。项目文件为该仓库下的 golang-developer-roadmap-zh-CN.xml 文件。 您如果想要修改它,您可以进入 Draw.io 点击打开已有图表并且选择这个 xml 文件。它会为您打开这个路线图。改进它,并且上传,以及更新该 ReadMe 中的对应图片,然后提交 PR(以 400% 的缩放导出 PNG 以及使用 Compressor.io 来压缩它)。
用 PR 提交改进在 Issue 中交流想法传播这个图表