Go(又稱 Golang)是 Google 的 Robert Griesemer,Rob Pike 及 Ken Thompson 開發的一種靜態強型別、編譯型語言。Go 語言語法與 C 相近,但功能上有:記憶體安全,GC(垃圾回收),結構形態及 CSP-style 并發計算。
中文名 Golang 外文名 Golang
屬 性 編程語言
簡介:Go(又稱Golang)是Google開發的一種靜態強型別、編譯型、并發型,并具有垃圾回收功能的編程語言。
羅伯特·格瑞史莫(Robert Griesemer),羅勃·派克(Rob Pike)及肯·湯普遜(Ken Thompson)于2007年9月開始設計Go,稍后Ian Lance Taylor、Russ Cox加入專案。Go是基于Inferno作業系統所開發的。Go于2009年11月正式宣布推出,成為開放源代碼專案,并在Linux及Mac OS X平臺上進行了實作,后來追加了Windows系統下的實作。在2016年,Go被軟體評價公司TIOBE 選為“TIOBE 2016 年最佳語言”。 目前,Go每半年發布一個二級版本(即從a.x升級到a.y)
描述:Go的語法接近C語言,但對于變數的宣告有所不同。Go支持垃圾回收功能。Go的并行模型是以東尼·霍爾的通信順序行程(CSP)為基礎,采取類似模型的其他語言包括Occam和Limbo,但它也具有Pi運算的特征,比如通道傳輸。在1.8版本中開放插件(Plugin)的支持,這意味著現在能從Go中動態加載部分函式。
與C++相比,Go并不包括如列舉、例外處理、繼承、泛型、斷言、虛函式等功能,但增加了 切片(Slice) 型、并發、管道、垃圾回收、介面(Interface)等特性的語言級支持。Go 2.0版本將支持泛型,對于斷言的存在,則持負面態度,同時也為自己不提供型別繼承來辯護。
不同于Java,Go內嵌了關聯陣列(也稱為哈希表(Hashes)或字典(Dictionaries)),就像字串型別一樣。
撰寫風格:在Go中有幾項規定,當不匹配以下規定時編譯將會產生錯誤。
1. 每行程式結束后不需要撰寫分號(;)。
2. 大括號({)不能夠換行放置。
3. if判斷式和for回圈不需要以小括號包覆起來。
Go亦有內置gofmt工具,能夠自動整理代碼多余的空白、變數名稱對齊、并將對齊空格轉換成Tab。
uj5u.com熱心網友回復:
別照抄別人的,誰說大括號({)不能夠換行放置。switch陳述句{就可以換行,不會編譯錯誤,如果不怕程式歧義話。轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/18234.html
標籤:go語言
上一篇:為什么同樣的代碼在IDLE中可以成功運行,但是在vscode顯示錯誤'gbk' codec can't encode
