Go 語言簡介

來源:互聯網
上載者:User

一.Go發展史

想要瞭解一門語言,少不了他的發展史。

這裡簡單的介紹一下其曆史年度關鍵節點。

1.裡程碑

Go 也叫 Golang

  • 起源於2007年
  • 2009年首次公開發布
  • 2010年Google投入使用
  • 2011年被Google AppEngine支援
  • 2012年正式版Go1
  • 2015年發布Go1.5,移除了“最後殘餘的C代碼”
  • 目前最新版本為Go1.10

不得不說Go是一門很年輕的語言,是一個零零後。

二.Go特點

我們學習一門語言總歸是出於各種各樣的原因的,他會是各式各樣的原因。

那既然現在我有了一個想要瞭解 Go 的一個意願,肯定要Crowdsourced Security Testing道該語言有那些特色,或者說有那些迷人的地方的說。

1.效率高

— 圖片來自百度

Go 被譽為“21世紀的 C 語言”。

正如 Go 語言的 Logo 這隻萌萌噠短腿兒囊地鼠的寓意一樣,Go 語言是很快速的,他的快速體現在兩個方面:

  1. 開發效率高
  2. 運行速度快

關於究竟是選擇開發速度還是執行速度這個問題,Go 選擇了折中,他即要開發速度,又要執行速度。

舉個青澀的栗子:碼的比 C / C++ 快 ,跑得比 Python 快,大致意思是對的,關於更詳細的差異需要深入去瞭解。

2.部署簡單

Go 不允許額外的引用,在其編譯後產生會產生可執行檔,幾乎不需要任何外部依賴

3.並發支援

Go 原生支援並發。

假如我們用 C# (seaconch .net 出身)編寫一個多線程的項目,那麼我們需要考慮東西會很多,編碼起來也會很繁瑣。

然而這些對於 Go 來說會是容易很多。

4.編碼體驗

Go 屬於靜態語言,是編譯型語言,但其構建速度很快,並且有大量的包可以使用。

Go 語言的目標即:將靜態語言的安全性和高效性與動態語言的易開發性進行結合

5.代碼格式化

通過 Go 的格式化命令(gofmt),可以使代碼風格保持統一化,便於閱讀。

6.UTF-8編碼

Go 完全支援 UTF-8 ,Go 的源碼格式即 UTF-8。

7.GC

Go 已經擁有了記憶體回收機制

三.Go缺失

seaconch 已知列舉如下:

  • 不支援函數(方法)重載
  • 不支援隱式轉換
  • 不支援泛型
  • 不支援靜態變數

四.適用情境

根據 seaconch 查閱得出相對較多的情境為:

  • 網路編程
  • 分布式編程
  • 伺服器編程
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.