您好,登錄后才能下訂單哦!
這篇“go語言圖標的發展史是什么”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“go語言圖標的發展史是什么”文章吧。
go語言圖標是囊地鼠(gopher)。gopher是一種生活在加拿大的小動物,go的吉祥物就是這個小動物,它的中文名叫做囊地鼠,它們最大的特點就是挖洞速度特別快;囊地鼠也代表了Go語言的運行速度、開發速度、學習速度(develop)快。
Go語言的logo就是很簡潔的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 語言起源 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語言適用的場景為:
- 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語言圖標的發展史是什么”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。