在第一天完成安裝後,就可以使用 Go 來寫程式啦!
作為一個工程師,一定要來段 Hello World 跟世界問個好,那麼在開始前需要準備幾樣東西:
如果都準備妥妥的,那我們就開始吧 ─=≡Σ(((っ゚∀゚)っ
首先,有分類強迫症的 Me 會準備一個專門放 Go 的檔案資料夾,而今天的目的是要來印出 Hello World,所以就在 ~/go
下建立一個 /go/HelloWorld
資料夾吧!
進入到 HelloWorld
後,建立一個 main.go
的檔案。
在 main.go
內完成下方這段程式碼:
package main
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
完成後儲存,並且在終端機執行 go run main.go
,沒意外就能夠成功印出 Hello World
,那麼今天的鐵人賽也順利完成啦~(´∀`)b
咦,根本什麼都還沒說吧...!!
讓我們倒帶回到上面的那段程式碼,來看看裡面我們到底做了什麼事吧。
Go 的程式碼以 package 爲組織,相同 package 的檔案都會放在同個資料夾中。
剛剛寫到的 package main
,可以作為整個程式運作的主體,因為只有帶有 main
package 的檔案可以被編譯及執行。
除此之外,每個 main
package 都需要有個 func main
作為整個程式的進入點,並且無法被 import。
import 能夠將別的 package / modules 內容引入到目前的這個 package 使用。
而剛剛用過的 fmt
package 中的 fmt.Println()
就像 Ruby 的 print
一樣能夠在終端機上印出內容。
剛剛在終端機上執行了 go run main.go
就能夠順利印出我們要的資訊,但要講 go run
在幹嘛前,需要先知道 go build
幫忙做了什麼事情。
還記得講到 package 時,只有 package main
能夠被編譯及執行嗎?go build
能夠將 package main
編譯成執行檔。要使用執行黨的話,只需要在終端機輸入 ./main
就能得到成果了。
而 go run
則是同時執行 go build
+ ./main
兩個指令。
$ go run main.go
=> Hello World
$ go build main.go
$ ./main
=> Hello World
第二天鐵人賽也正式結束,有任何指教也歡迎在下方留言 :)