每天一點GO語言——Linux環境下安裝Go語言環境以及編寫Go語言程序初體驗
一、安裝Go語言環境
[root@localhost opt]# yum -y install wget git
[root@localhost opt]# wget -c https://studygolang.com/dl/golang/go1.10.3.linux-amd64.tar.gz
[root@localhost opt]# tar -zxvf go1.10.3.linux-amd64.tar.gz
[root@localhost opt]# ls
go go1.10.3.linux-amd64.tar.gz nginx-1.16.1 rh share_Ubuntu18.04
[root@localhost go]# ls
api blog doc lib PATENTS robots.txt VERSION
AUTHORS CONTRIBUTING.md favicon.ico LICENSE pkg src
bin CONTRIBUTORS hello.go misc README.md test
[root@localhost go]# vim /etc/profile(如果不是所有用戶修改~/.bash_profile文件)
#添加下面三行
export GOROOT=/opt/go
export PATH=$PATH:$GOROOT/bin
export GOPATH=~/gopath
#保存退出後重啓或source加載一下
二、體驗簡單的Go語言程序,瞭解其語言的基本組成結構
經典程序進行實踐體驗——使用go語言輸出hello world
[root@localhost go]# vim hello.go #後綴是go語言程序的標誌,和C語言.c文件一樣
[root@localhost go]# cat hello.go #go語言程序案例如下:打印hello world
package main
import "fmt"
func main(){
fmt.Println("hello world!")
}
[root@localhost go]# go run hello.go
hello world!
文件簡析:
1、package main ——定義聲明包名(可以類比java來理解go)
必須在源文件中非註釋的第一行指明這個文件屬於哪個包,如:package main。package main表示一個可獨立執行的程序,每個 Go 應用程序都包含一個名爲 main 的包。
2、import "fmt" ——引入包
告訴 Go 編譯器這個程序需要使用 fmt 包(的函數,或其他元素),fmt 包實現了格式化 IO(輸入/輸出)的函數。(本例中下面的println函數)
3、func main() {
}
這是函數體結構,main 函數是每一個可執行程序所必須包含的,一般來說都是在啓動後第一個執行的函數(但如果有 init() 函數則會先執行該函數)。例如:
[root@localhost go]# cat h.go
package main
import "fmt"
func main(){
fmt.Println("hello world!")
}
func init(){
fmt.Println("我先執行,其他的等一會")
}
運行 go run h.go結果如下:
我先執行,其他的等一會
hello world!
初學者一定要注意括號對應關係
4、/ 這是我的第一個go程序 /
這是註釋,爲了提高代碼的可讀性的必要註釋,不在程序運行時執行,也可以使用//註釋單行
5、fmt.Println("Hello, World!")——將字符串輸出到控制檯,並在最後自動增加換行字符 \n。使用 fmt.Print("hello, world\n") 可以得到相同的結果。
補充,不瞭解什麼是面嚮對象語言也可以先了解一下,暫時不需要理解,有個概念就行:當標識符(包括常量、變量、類型、函數名、結構字段等等)以一個大寫字母開頭,如:G1,那麼使用這種形式的標識符的對象就可以被外部包的代碼所使用(客戶端程序需要先導入這個包),這被稱爲導出(像面嚮對象語言中的 public);標識符如果以小寫字母開頭,則對包外是不可見的,但是他們在整個包的內部是可見並且可用的(像面嚮對象語言中的 private )。