go语言图标的发展史是什么
来源:亿速云
时间:2023-03-08 18:54:58 185浏览 收藏
本篇文章主要是结合我之前面试的各种经历和实战开发中遇到的问题解决经验整理的,希望这篇《go语言图标的发展史是什么》对你有很大帮助!欢迎收藏,分享给更多的需要的朋友学习~
这篇“go语言图标的发展史是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“go语言图标的发展史是什么”文章吧。
go语言图标是囊地鼠(gopher)。gopher是一种生活在加拿大的小动物,go的吉祥物就是这个小动物,它的中文名叫做囊地鼠,它们最大的特点就是挖洞速度特别快;囊地鼠也代表了Go语言的运行速度、开发速度、学习速度(develop)快。
Go语言的logo就是很简洁的GO两个字母。
Go的吉祥物
Go之所以叫Go,是想表达这门语言的运行速度、开发速度、学习速度(develop)都像gopher一样快。
go语言的标志是一只囊地鼠,有说法说是土拨鼠,但据有心人士(闲得无聊)考据党考据得出go的原型其实是一只囊地鼠(gopher)。
gopher是一种生活在加拿大的小动物,go的吉祥物就是这个小动物, 它的中文名叫做囊地鼠,他们最大的特点就是挖洞速度特别快,当然可能不止是挖洞啦。
go语言萌萌的吉祥物在一堆编程语言中画风都不同。
不禁让人怀疑这只地鼠真的是Geek做出的吗?
当然
不是啦!
这只萌萌的吉祥物是由Rob Pike的妻子 Renee French绘制的,Pob Pike是Go的发明者之一,贝尔实验室UNIX小组成员,Plan9主要开发者,他最喜欢做似乎就是:
发明操作系统
发明编辑器
发明语言
....
这位大神虽然很传奇,但他不是我们此次的主角。
我们的主角,golang吉祥物的设计者Renee French是一位知名插画师,她的画风是这样的:
就是她设计出了Golang吉祥物,可爱的Gordon
比心心!
Go语言的发展
Go 语言起源 2007 年
Go 从 2009 年 9 月 21 日开始正式作为谷歌公司 20% 兼职项目
2009年11月10日Google公司才正式发布Go语言,并以BSD协议完全开源,支持Linux和Mac OS平台,同年11月支持Windows平台。
下面我们以时间轴的方式梳理了在这个迭代过程中,发生了哪些里程碑式的大事件。
若想详细了解Go历史版本更迭请看: https://golang.google.cn/doc/devel/release.html
- 2007年9月,雏形设计 ,Rob Pike(罗伯.派克) 正式命名为Go;
- 2008年5月,Google全力支持该项目;
// 2009年11月10日,首次公开发布,Go将代码全部开源,它获得了当年的年度语言;
- 2011年3月16日,Go语言的第一个稳定(stable)版本r56发布。
// 2012年3月28日,Go语言的第一个正式版本Go1发布。
- 2013年4月04日,Go语言的第一个Go 1.1beta1测试版发布。
- 2013年4月08日,Go语言的第二个Go 1.1beta2测试版发布。
- 2013年5月02日,Go语言Go 1.1RC1版发布。
RC=Release Candidate,含义是”发布候选版”,
它不是最终的版本,而是最终版(RTM=Release To Manufacture)之前的最后一个版本。
- 2013年5月07日,Go语言Go 1.1RC2版发布。
- 2013年5月09日,Go语言Go 1.1RC3版发布。
- 2013年5月13日,Go语言Go 1.1正式版发布。
- 2013年9月20日,Go语言Go 1.2RC1版发布。
- 2013年12月1日,Go语言Go 1.2正式版发布。
- 2014年6月18日,Go语言Go 1.3版发布。
- 2014年12月10日,Go语言Go 1.4版发布。
// 2015年8月19日,Go语言Go 1.5版发布,本次更新中移除了”最后残余的C代码”。
go1.5的发布被认为是历史性的。完全移除C语言部分,使用GO编译GO(ps:少量代码使用汇编实现),GO编译GO称之为Go的自举,是一门编程语言走向成熟的表现。另外,他们请来了内存管理方面的权威专家Rick Hudson,对GC进行了重新设计,支持并发GC,解决了一直以来广为诟病的GC时延(STW)问题。并且在此后的版本中,又对GC做了更进一步的优化。到go1.8时,相同业务场景下的GC时延已经可以从go1.1的数秒,控制在1ms以内。GC问题的解决,可以说GO语言在服务端开发方面,几乎抹平了所有的弱点。
- 2016年2月17日,Go语言Go 1.6版发布。
- 2016年8月15日,Go语言Go 1.7版发布。
- 2017年2月17日,Go语言Go 1.8版发布。
- 2017年8月24日,Go语言Go 1.9版发布。
- 2018年2月16日,Go语言Go 1.10版发布。
- 2018年8月24日,Go语言Go 1.11版发布。
- 2019年2月25日,GO语言Go1.12版发布。
ps:在GO语言的版本迭代过程中,语言特性基本上没有太大的变化,基本上维持在GO1.1的基准上,并且官方承诺,新版本对老版本下开发的代码完全兼容。事实上,GO开发团队在新增语言特性上显得非常谨慎,Go语言的版本更迭主要集中在稳定性、编译速度、执行效率以及GC性能等底层性能方面,所以说Go语言使用者不必担心快速的版本更迭带来的兼容性问题
Go语言这两年在语言排行榜(https://www.tiobe.com/tiobe-index/)增长曲线如下,总体还是处于上涨趋势的
大量基于GO语言开发的杀手级应用:Docker、Kubernetes、Go-Ethereum、Thrraform、Moby、Gogs、Grafana、Etcd等。于2009、2016两次夺得TIOBE年度编程语言的称号,2020年世界排名处于第12位
Go语言的应用场景
编程语言说到底只是一种工具,不选最好的,只选最合适的
// Go语言适用的场景为:
- 1、服务器编程,以前你如果使用C或者C++做的那些事情,用Go来做很合适,例如处理日志、数据打包、虚拟机处理、文件系统等。
- 2、凭借其出色的并发能力,Go在分布式系统领域,如集群系统、游戏服务器、数据库代理器、中间件等场景同样极具威力
- 3、网络编程,这一块目前应用最广,包括Web应用、API应用、下载应用,而且Go内置的net/http包基本上把我们平常用到的网络功能都实现了。
- 4、数据库操作
- 5、开发云平台,目前国外很多云平台在采用Go开发
// Go语言不适合的场景为:
1、强实时性软件:话音通信、无人驾驶、垃圾回收、自动内存分配等因素都让Go在实时性上力不从心
其他
Go 语言被设计成一门应用于搭载 Web 服务器,存储集群或类似用途的巨型中央服务器的系统编程语言。对于高性能分布式系统领域而言,Go 语言无疑比大多数其它语言有着更高的开发效率。它提供了海量并行的支持,这对于游戏服务端的开发而言是再好不过了。Go 语言一个非常好的目标就是实现所谓的复杂事件处理(CEP),这项技术要求海量并行支持,高度的抽象化和高性能。当我们进入到物联网时代,CEP 必然会成为人们关注的焦点。但是 Go 语言同时也是一门可以用于实现一般目标的语言,例如对于文本的处理,前端展现,甚至像使用脚本一样使用它。值得注意的是,因为垃圾回收和自动内存分配的原因,Go 语言不适合用来开发对实时性要求很高的软件。越来越多的谷歌内部的大型分布式应用程序都开始使用 Go 语言来开发,例如谷歌地球的一部分代码就是由 Go 语言完成的。如果你想知道一些其它组织使用Go语言开发的实际应用项目,你可以到 使用 Go 的组织 页面进行查看。出于隐私保护的考虑,许多公司的项目都没有展示在这个页面。在 Chrome 浏览器中内置了一款 Go 语言的编译器用于本地客户端(NaCl),这很可能会被用于在 Chrome OS 中执行 Go 语言开发的应用程序。Go 语言可以在 Intel 或 ARM 处理器上运行,因此它也可以在安卓系统下运行,例如 Nexus 系列的产品。在 Google App Engine 中使用 Go 语言:2011 年 5 月 5 日,官方发布了用于开发运行在 Google App Engine 上的 Web 应用的 Go SDK,在此之前,开发者们只能选择使用 Python 或者 Java。这主要是 David Symonds 和 Nigel Tao 努力的成果。目前最新的稳定版是基于 Go 1.4 的 SDK 1.9.18,于 2015 年 2 月 18 日发布。
以上就是关于“go语言图标的发展史是什么”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注golang学习网行业资讯频道。
到这里,我们也就讲完了《go语言图标的发展史是什么》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于golang的知识点!
-
185 收藏
-
460 收藏
-
430 收藏
-
450 收藏
-
320 收藏
-
471 收藏
-
454 收藏
-
370 收藏
-
370 收藏
-
314 收藏
-
499 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 507次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习