Go語言(或 Golang)是Google開發的開源程式語言,是非常年輕的一門語言,它的主要目標是「兼具Python 等動態語言的開發速度和C/C++等編譯型語言的效能與安全性」。有關於Go語言的自主學習,可參考Go語言.
VsCode全稱"Visual Studio Code",是一款編譯軟體,可以支援市面上99%的程式語言,當需要編譯相應的語言時,只需要下載相應的擴充套件包即可。
主要步驟可參考Go語言開發環境.
這裡特別提醒需要跳過的幾個坑
在Go語言中並沒有很好的闡述具體的VsCode操作,為此,特別注意以下幾點
在src/hello下右鍵,選擇在整合終端中開啟
之後在終端中執行命令D:\GoProject\src\hello>main.exe
注意終端要選擇cmd,如果是powershell,需執行PS D:\GoProject\src\hello> ./main.exe,具體原因是命令列程式不同,在此不做討論。
2. 對Hello World的進一步解釋
package main // 宣告 main 包,表明當前是一個可執行程式
import "fmt" // 匯入內建 fmt
func main(){ // main函數,是程式執行的入口
fmt.Println("Hello World!") // 在終端列印 Hello World!
}
我們發現第一行是package main,那麼這行的意思是什麼?
可執行檔案必須包含 package main 和入口函數 main , main 包是 Go 語言程式的入口包,一個 Go 語言程式必須有且僅有一個 main 包,並且,一個 main 包中也必須有且僅有一個 main 函數。如果一個程式沒有 main 包,那麼編譯時將會出錯,無法生成可執行檔案。
簡單理解就是,如果你要建立一個可執行檔案,必須用到package main。Go 語言是使用包來組織原始碼的,並實現名稱空間的管理,給包命名的慣例是使用包所在目錄的名字。但當你要運用可執行檔案,你就得換成package main了。當編譯器發現某個包的名字為 main 時,它一定也會發現名為 main() 的函數,否則不會建立可執行檔案。 main() 函數是程式的入口,所以,如果沒有這個函數,程式就沒有辦法開始執行。
fmt指令會從指定的檔案裡讀取內容,將其依照指定格式重新編排後,輸出到標準輸出裝置。
匯入內建fmt,fmt可以理解為一種格式化包,在Go語言下import 「fmt」,可以理解為fmt是一種官方包,之後輸出如果用fmt.Println必須匯入內建fmt,而輸出用fmt.Println的好處就是不會出錯。(目前先這樣理解)
func main()
func 即function,宣告main是函數
語法對比
好像每句都不要加「;」,這和C++和Java有很大程度上不同,算是一種對格式的簡化吧