0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一份来自Github的2019年Go开发者指南,帮助大家快速入门Go语言

电子工程师 来源:lq 2019-05-05 11:51 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

Go是Google开发的一种静态、强类型、编译型、并发型,并具有垃圾回收功能的类C编程语言。2009以开源项目的形式发布,2012年发布1.0稳定版本,距今已经十年了,其性能类似于JavaC++,但速度极快,适合搭载于web服务器,用于高性能分布式系统开发。

作为热门的编程语言之一,Go语言吸引了很多关注。根据TIOBE编程排行榜,2016年,Go语言成为年度最受欢迎的编程语言;2019年,Go语言的热度不减,仍稳居排行榜前20名。在基于云的服务中,Go语言因其在编译速度和执行性能上的优越性,具有其他编程语言无法比拟的优势。随着云计算的迅速发展,更多基于Go语言的项目正在不断涌现。

今天,营长就为大家推荐了一份来自Github的2019年Go开发者指南,帮助大家快速入门Go语言。

该指南提供了详细的进阶路线图,列出了学习Go开发所需的各类知识和技能,而且每个知识点也附上啦相应的学习资源。相信无论是零基础的新手,还是对Go语言有一定了解的开发者,都能够有所收获。

Go开发者路线图

学习资源整理

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

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 云计算
    +关注

    关注

    39

    文章

    8059

    浏览量

    144977
  • 编程语言
    +关注

    关注

    10

    文章

    1966

    浏览量

    40018
  • go语言
    +关注

    关注

    1

    文章

    161

    浏览量

    9879

原文标题:Go开发者路线图2019,请收下这份指南

文章出处:【微信号:rgznai100,微信公众号:rgznai100】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    探索 XENSIV™ DPS310/368 Pressure Sensor 2Go Kit

    : KITDPS3682GOTOBO1.pdf 二、套件特点概述 ()兼容性强 该套件兼容 Arduino IDE,能让开发者快速轻松地获取测量结果,极大地提高了开发效率。这
    的头像 发表于 05-19 10:05 283次阅读

    iMOTION2go:开启iMOTION设计平台的入门之选

    设计平台打造的入门套件,能帮助工程师快速上手iMOTION生态系统。 文件下载: EVALIMOTION2GOTOBO1.pdf 、文档概述 这份应用笔记主要介绍了iMOTION2
    的头像 发表于 05-18 11:05 321次阅读

    Go 语言高并发服务设计与性能调优实战:从万级到百万级并发的演进之路

    在2026的今天,Go 语言已成为高并发后端服务的首选语言。根据 Stack Overflow 最新开发者调查: 指标 数据
    发表于 02-18 19:19

    探秘 CYSBSYSKIT - DEV - 01 快速物联网连接开发者套件

    快速物联网连接开发者套件凭借其独特的设计和强大的功能,为开发者们搭建了个便捷的开发平台。本文将详细介绍该套件的
    的头像 发表于 12-21 15:35 968次阅读

    低成本TLI4971/TLE4971电流传感器评估套件——MS2Go与S2Go

    )的TLI4971/TLE4971电流传感器MS2Go和S2Go评估套件,这两款套件为我们提供了种低成本、高效的方式来快速评估TLI4971/TLE4971电流传感器。 文件下载:
    的头像 发表于 12-19 16:50 1338次阅读

    XENSIV™ PAS CO2 Sensor2Go评估套件快速上手指南

    XENSIV™ PAS CO2 Sensor2Go评估套件快速上手指南 在电子工程领域,对于二氧化碳($CO_2$)传感器的评估和应用是个重要的研究方向。英飞凌的XENSIV™ PA
    的头像 发表于 12-19 16:15 805次阅读

    KIT_XMC14_2GO开发板:功能特性与硬件解析

    KIT_XMC14_2GO开发板:功能特性与硬件解析 在电子开发领域,款性能出色且功能丰富的开发板对于工程师来说至关重要。今天,我们就来详
    的头像 发表于 12-19 10:20 697次阅读

    探索TLE493D-P3XX-MS2GO 3D 2Go套件:开启3D磁传感器评估之旅

    探索TLE493D-P3XX-MS2GO 3D 2Go套件:开启3D磁传感器评估之旅 在电子工程师的日常工作中,评估和开发磁传感器是项常见且重要的任务。英飞凌(Infineon
    的头像 发表于 12-18 17:15 1483次阅读

    以龙企招为例,浅谈鸿蒙应用开发者激励计划 2025 参与心得

    鸿蒙生态的发展节奏,深入研习鸿蒙开发标准与用户体验要求,不断打磨龙企招应用。我们坚信,在鸿蒙生态严格的质量体系加持下,只要持续优化、不断升级,不仅能让龙企招满足上架要求,更能为用户带来更优质的鸿蒙求职体验,最终实现用户、操作系统与开发者三方共赢的良好局面,为鸿蒙生态的繁荣
    发表于 12-12 10:17

    房产数据平台安家go获取地区列表数据的API接口

    ​ 在房产数据平台“安家go”中,获取地区列表数据是个常见需求,它允许开发者访问全国或特定区域的行政区划信息,如省、市、区县等。这对于构建房产搜索、数据分析或地图应用至关重要。本文将详细介绍
    的头像 发表于 11-21 14:38 549次阅读
    房产数据平台安家<b class='flag-5'>go</b>获取地区列表数据的API接口

    元服务发布配置开发者服务信息

    。 左侧导航选择“应用上架 > 应用信息”。 进入“开发者服务信息”区域,编辑相关信息。 供应商、开发者名称来自注册账号的信息,只读显示,无法修改。 可编辑信息: 官网:请输入以http
    发表于 10-31 17:58

    电商API入门问答:开发者必知的10个基础问题

    至关重要,能帮助避免常见错误,提升开发效率。本文将围绕10个基础问题展开,提供清晰解答和实用示例,助你快速上手。 1. 什么是电商API? 电商API是电商平台(如Shopify、Amazon或eBay)提供的
    的头像 发表于 07-14 14:54 858次阅读
    电商API<b class='flag-5'>入门</b>问答:<b class='flag-5'>开发者</b>必知的10个基础问题

    这次你说了算!先楫半导体开发者生态技术日

    HPM为开发者量身打造的生态活动正在规划中! 赶紧动动发财的小手填个小问卷,告诉我们你关心的话题和期待的场景,我们会认真阅读每一份问卷,听取大家的宝贵建议,期待您的反馈哈!
    发表于 07-10 11:21

    这次你说了算!先楫半导体开发者生态技术日规划中,调查问卷等你来填

    HPM为开发者量身打造的生态活动正在规划中! 赶紧动动发财的小手填个小问卷,告诉我们你关心的话题和期待的场景,我们会认真阅读每一份问卷,听取大家的宝贵建议,期待您的反馈哈!
    发表于 07-10 11:10