Go 經(jīng)典入門系列:介紹與安裝
由于某些原因,這一系列在公眾號(hào)都刪除了,從今天起會(huì)重新發(fā)布,排版會(huì)更好。
這是我們 Golang 系列教程的第一個(gè)教程。
Golang 是什么
Go 亦稱為 Golang (譯注:按照 Rob Pike 說(shuō)法,語(yǔ)言叫做 Go,Golang 只是官方網(wǎng)站的網(wǎng)址),是由谷歌開(kāi)發(fā)的一個(gè)開(kāi)源的編譯型的靜態(tài)語(yǔ)言。
Golang 的主要關(guān)注點(diǎn)是使得高可用性和可擴(kuò)展性的 Web 應(yīng)用的開(kāi)發(fā)變得簡(jiǎn)便容易。(譯注:Go 的定位是系統(tǒng)編程語(yǔ)言,只是對(duì) Web 開(kāi)發(fā)支持較好)
為何選擇 Golang
既然有很多其他編程語(yǔ)言可以做同樣的工作,如 Python,Ruby,Nodejs 等,為什么要選擇 Golang 作為服務(wù)端編程語(yǔ)言?
以下是我使用 Go 語(yǔ)言時(shí)發(fā)現(xiàn)的一些優(yōu)點(diǎn):
并發(fā)是語(yǔ)言的一部分(譯注:并非通過(guò)標(biāo)準(zhǔn)庫(kù)實(shí)現(xiàn)),所以編寫多線程程序會(huì)是一件很容易的事。后續(xù)教程將會(huì)討論到,并發(fā)是通過(guò) Goroutines 和 channels 機(jī)制實(shí)現(xiàn)的。 Golang 是一種編譯型語(yǔ)言。源代碼會(huì)編譯為二進(jìn)制機(jī)器碼。而在解釋型語(yǔ)言中沒(méi)有這個(gè)過(guò)程,如 Nodejs 中的 JavaScript。 語(yǔ)言規(guī)范十分簡(jiǎn)潔。所有規(guī)范都在一個(gè)頁(yè)面展示,你甚至都可以用它來(lái)編寫你自己的編譯器呢 :) Go 編譯器支持靜態(tài)鏈接。所有 Go 代碼都可以靜態(tài)鏈接為一個(gè)大的二進(jìn)制文件(譯注:相對(duì)現(xiàn)在的磁盤空間,其實(shí)根本不大),并可以輕松部署到云服務(wù)器,而不必?fù)?dān)心各種依賴性。
安裝
Golang 支持三個(gè)平臺(tái):Mac,Windows 和 Linux(譯注:不只是這三個(gè),也支持其他主流平臺(tái))。你可以在 https://golang.org/dl/[1] 中下載相應(yīng)平臺(tái)的二進(jìn)制文件。(譯注:因?yàn)楸娝苤脑颍绻螺d不了,請(qǐng)到 https://studygolang.com/dl[2] 下載)
Mac OS
在 https://golang.org/dl/[3] 下載安裝程序。雙擊開(kāi)始安裝并且遵循安裝提示,會(huì)將 Golang 安裝到 /usr/local/go 目錄下,同時(shí) /usr/local/go/bin 文件夾也會(huì)被添加到 PATH 環(huán)境變量中。
Windows
在 https://golang.org/dl/[4] 下載 MSI 安裝程序。雙擊開(kāi)始安裝并且遵循安裝提示,會(huì)將 Golang 安裝到 C:\Go 目錄下,同時(shí) c:\Go\bin 目錄也會(huì)被添加到你的 PATH 環(huán)境變量中。
Linux
在 https://golang.org/dl/[5] 下載 tar 文件,并解壓到 /usr/local。
請(qǐng)?zhí)砑?/usr/local/go/bin 到 PATH 環(huán)境變量中。Go 就已經(jīng)成功安裝在 Linux 上了。
在本系列下一部分 Golang 系列教程第 2 部分: Hello World 中,我們將會(huì)建立 Go 的工作區(qū),編寫我們第一個(gè) Go 程序 :)
請(qǐng)?zhí)峁┙o我們寶貴的反饋和意見(jiàn)。感謝您的閱讀 :)
下一教程 - Hello World[6]
via: https://golangbot.com/golang-tutorial-part-1-introduction-and-installation/
作者:Nick Coghlan[7]譯者:Noluye[8]校對(duì):polaris1119[9], Unknwon[10]
本文由 GCTT[11] 原創(chuàng)編譯,Go 中文網(wǎng)[12] 榮譽(yù)推出
參考資料
https://golang.org/dl/: https://golang.org/dl/
[2]https://studygolang.com/dl: https://studygolang.com/dl
[3]https://golang.org/dl/: https://golang.org/dl/
[4]https://golang.org/dl/: https://golang.org/dl/
[5]https://golang.org/dl/: https://golang.org/dl/
[6]Hello World: https://studygolang.com/articles/11755
[7]Nick Coghlan: https://golangbot.com/about/
[8]Noluye: https://github.com/Noluye
[9]polaris1119: https://github.com/polaris1119
[10]Unknwon: https://github.com/Unknwon
[11]GCTT: https://github.com/studygolang/GCTT
[12]Go 中文網(wǎng): https://studygolang.com/
推薦閱讀
