5分钟学Go 基础01:初识 Go 的第一印象是薪水可观
本文首发于公众号「5分钟学Go」,一个让你每次花 5 分钟就能掌握一个技能点的公众号。目前在博主连更 5 分钟学Go系列,大家可以关注下,第一时间掌握Go技能。如果想要加群交流,可以在公众号后台回复「加群」,回复「gogogo」,还有博主精心整理的一份Go语言从入门、进阶到高阶的学习宝典。欢迎你的关注。
最近几年,随着云计算、区块链等技术的发展,有一门语言逐渐成为大家热衷讨论的对象,成为了继 Python 之后的另一块香饽饽,那就是 Go 语言。
其实如果要追溯历史的话,Go 语言诞生于 Google,从 2007 年便开始设计,并于 2009 年 11 月 10 日正式发布第一版,此后便开始在 Google 内部使用。
正如 Python 借助 AI 的东风大火一样,Go 语言大范围的使用和普及也是借助了云计算、区块链等技术的东风,特别是云计算,以 Google 开源的 Kubernetes 为代表,Go 逐渐成为了云计算领域的第一首选语言,目前还没有竞争对手。
国内最早全面使用 Go 语言的公司要属七牛云了,其创始人许式伟说过一句话:“Go 语言是互联网时代的 C 语言”。可想它如今的地位是不言而喻的。
下图是 2020 StackOverflow 的调查,左边是最流行的语言排行榜,右边是最热门的语言。流行看的是历史地位和应用程度,而热门更多看的是近来的关注程度。
| 最流行的语言 | 最热门的语言 |
|---|---|
![]() |
![]() |
可以看到,Go 语言应用范围具有一定的局限性,所以流行程度并不高,但关注程度是相对较高的,特别是对比前几年的数据你会发现,它是一直增长的。
接下来再来看下大家比较关心的一个问题:哪种语言的薪资较高?毕竟程序员这个行业,回归到现实,都是“面对薪资编程”。如下图所示,左边是 2019 年的数据,右边是 2020 年的数据。
| 2019编程语言薪水排名 | 2020编程语言薪水排名 |
|---|---|
![]() |
![]() |
可以看到,Go 语言的薪水排名都稳居前三甲。所以,综合来看,Go 语言是今后最值得学的一门语言。
那 Go 语言到底有哪些优势呢?为何能成为云计算领域的第一大语言?下面简单说说,更多内容在后面的文章中我们会逐一展开。
首先它是一种静态、强一致类型、编译型的系统级编程语言。这几个关键字可能不那么好理解,但是看完下面这幅图相信你能理解个大概:

从类型来看,Go 语言和 Java 语言同处于第一象限,但它编译型、系统级的特性又让它具备 C/C++ 语言的高性能的特性。
其次一个比较重要的优势是 Go 天然支持高并发,小白也能轻松写出高并发代码。
最后值得一提的是 Go 语言的语法简单,学习曲线平坦,开发效率可以和 Python 媲美。
此外,还有很多的优秀特性,后面会带大家逐一领略(大家可以关注下公众号,每天第一时间收到推送,花 5 分钟就可以掌握一个 Go 技能点)。
看到这里大家一定很好奇,有哪些开源项目是使用 Go 语言开发的?
Go 生态系统有众多明星开源软件:Docker、Kubernetes、Rancher、istio、Drone、Lantern、Hyperledger、Caddy、Prometheus、InfluxDB、etcd、CockroachDB、TiDB、Gogs ...
(这里有一份开源的关于 Go 优秀的软件、库和框架:Awesome Go)
极客时间的郝林在他的专栏里也整理过一张使用 Go 语言开发的开源项目大图,非常全。

OK,今天就到这里,本文是 5 分钟学 Go 语言的第一篇,先让大家对 Go 有个大概的印象,后面会展开更多的内容,没关注的朋友可以关注下,一起抱团学习。就像一句话说的:
学习 Go 语言,最好的时间是 10 年前,其次是现在。

5分钟学Go 基础01:初识 Go 的第一印象是薪水可观的更多相关文章
- 076 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 01 Java面向对象导学
076 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 01 Java面向对象导学 本文知识点:Java面向对象导学 说明:因为时间紧张,本人 ...
- 081 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 06 new关键字
081 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 06 new关键字 本文知识点:new关键字 说明:因为时间紧张,本人写博客过程中只是 ...
- 080 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 05 单一职责原则
080 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 05 单一职责原则 本文知识点:单一职责原则 说明:因为时间紧张,本人写博客过程中只是 ...
- 079 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 04 实例化对象
079 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 04 实例化对象 本文知识点:实例化对象 说明:因为时间紧张,本人写博客过程中只是对知 ...
- 078 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 03 创建类
078 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 03 创建类 本文知识点:创建类 说明:因为时间紧张,本人写博客过程中只是对知识点的关 ...
- 077 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 02 类和对象
077 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 02 类和对象 本文知识点:类和对象 说明:因为时间紧张,本人写博客过程中只是对知识点 ...
- 30分钟学玩转RabbitMQ
最近在学习RabbitMQ,在网上找了不少资料发现都特高端.动辄集群部署,分布式架构什么的,对于一个初学者实在不够友好.心想求人不如求自己,为什么不自己整理一套资料呢?于是<30分钟学玩转Rab ...
- LibreOJ 2003. 「SDOI2017」新生舞会 基础01分数规划 最大权匹配
#2003. 「SDOI2017」新生舞会 内存限制:256 MiB时间限制:1500 ms标准输入输出 题目类型:传统评测方式:文本比较 上传者: 匿名 提交提交记录统计讨论测试数据 题目描述 ...
- 316python 基础之计算机基础、Python简介、变量、注释、基础数据类型初识、if、while、语句
一.计算机基础. cpu:相当于人的大脑,运算与控制中心. 速度 飞机 内存:4G,8G,16G....暂时存储,供给cpu数据. 速度 高铁.成本高,断电即消失. 硬盘:相当于你电脑的数据库,存储着 ...
随机推荐
- 面试必问:如何实现Redis分布式锁
摘要:今天我们来聊聊分布式锁这块知识,具体的来看看Redis分布式锁的实现原理. 一.写在前面 现在面试,一般都会聊聊分布式系统这块的东西.通常面试官都会从服务框架(Spring Cloud.Dubb ...
- join 查询优化
在开发中往往会出现查询多表联查的情况,那么就会用到 join 查询. Join查询种类 为了方便说明,先定义一个统一的表,下面再做例子. CREATE TABLE `t2` ( `id` int(11 ...
- 内存空间有限情况下的词频统计 Trie树 前缀树
数据结构与算法专题--第十二题 Trie树 https://mp.weixin.qq.com/s/nndr2AcECuUatXrxd3MgCg
- Lucene 查询原理 传统二级索引方案 倒排链合并 倒排索引 跳表 位图
提问: 1.倒排索引与传统数据库的索引相比优势? 2.在lucene中如果想做范围查找,根据上面的FST模型可以看出来,需要遍历FST找到包含这个range的一个点然后进入对应的倒排链,然后进行求并集 ...
- calc, support, media各自的含义及用法?
@support主要是用于检测浏览器是否支持CSS的某个属性,其实就是条件判断,如果支持某个属性,你可以写一套样式,如果不支持某个属性,你也可以提供另外一套样式作为替补. calc() 函数用于动态计 ...
- JS:replace
JavaScript中replace() 方法如果直接用str.replace("-","!") 只会替换第一个匹配的字符. 而str.replace(/-/g ...
- stop脚本
PID=$(ps -ef | grep eladmin-system-2.0.jar | grep -v grep | awk '{ print $2 }')if [ -z "$PID&qu ...
- python模块----paramicko模块 (ssh远程主机并命令或传文件)
paramiko模块 paramicko模块是非标准库模块,需要pip下载 paramicko:模拟ssh登陆linux主机,也有上传下载功能.ansible自动化部署软件底层就有应用paramick ...
- 使用kubekey安装kubesphere
下载 KubeKey KubeKey 是新一代 Kubernetes 和 KubeSphere 安装器,可帮助您以简单.快速.灵活的方式安装 Kubernetes 和 KubeSphere. expo ...
- 【bzoj 2339】[HNOI2011]卡农(数论--排列组合+逆元+递推)
题意:从编号为 1~N 的音阶中可选任意个数组成一个音乐片段,再集合组成音乐篇章.要求一个音乐篇章中的片段不可重复,都不为空,且出现的音符的次数都是偶数个.问组成 M 个片段的音乐篇章有多少种.答案取 ...



