原文:CalliCoder — Hello Golang: Writing your first Golang Program
當我們開始學習一種新的程式語言時,通常會先要撰寫經典的「Hello, World」程式。
讓我們用 Go 撰寫「Hello, World」程式,並了解其工作原理。開啟你慣用的文字編輯器,建立一個名為 hello.go
的新檔案,然後輸入以下程式碼:
// My first Program
package main
import "fmt"
func main() {
fmt.Println("Hello, World")
}
你可以像這樣使用 go run
指令來執行上面的程式:
$ go run hello.go
Hello, World
go run
指令做了兩件事:它先將程式編譯成機器碼,然後執行編譯後的程式碼。
但是,如果你想從 Go 原始碼產生一個執行檔,可以在不使用 Go 工具的情況下將其作為獨立的可執行檔來執行,則可以使用 go build
指令:
$ go build hello.go
$ ls
hello hello.go
你可以像這樣執行它:
$ ./hello
Hello, World
了解「Hello, World」程式
讓我們逐行瀏覽「Hello, World」程式並了解它:
第 1 行: 以
//
開頭的是註解:// My first Program
Go 編譯器會忽略註解。他們用來讓其他人更容易理解你的程式碼。
Go 支援兩種不同樣式的註解:
單行註解
// This is a Single line Comment. Everything in this line is ignored by the compiler
多行註解
/* This is a Multi line Comment. As the name suggests, It can span multiple lines. */
第 2 行: package 宣告:
package main
每個 Go 程式都始於 package 宣告。Package 用於將相關的 Go 原始碼檔案組織在一起,使其可重複使用。
Package「main」是一個特殊的 Go package,與預計要可以執行的程式一起使用。
Go 中有兩種類型的程式:可執行程式和函式庫。可執行程式是可以從命令列執行的程式。函式庫是可重複使用的程式碼片段,被其他程式用來執行某些任務。
第 3 行: import 陳述式:
import "fmt"
關鍵字
import
用於從其他 package 中匯入可重複使用的程式碼片段,以便在我們的程式中使用。Package「fmt」包含用於處理 I/O 的程式碼。
第 4 行: 函數宣告:
func main() { // ... }
函數是程式碼單元,包含一個或多個用來執行任務的指令。通常,我們將程式分解為一些較小的函數,這些函數接受一些輸入,對輸入進行一些處理並產生輸出。
在 Go 中是使用
func
關鍵字宣告函數。main()
函數是 Go 中可執行程式的進入點。這是執行可執行程式時先被呼叫的地方。第 5 行: 這行包含對
fmt
package 的Println()
函數的呼叫:fmt.Println("Hello, World")
我們將字串「Hello, World」傳遞給
Println()
函數,該函數將它連同新的一行一起列印到標準輸出中。
結論
恭喜!你撰寫了你的第一個 Go 的程式,謝謝你的閱讀。