下載地址
- golang.org/dl ,這個地址需要翻牆下載
- studygolang.com/dl ,可直接在此網站下載,windows下載如下:
安裝配置環境變數
1.假設將安裝包安裝在D盤,新建 如下環境變數:
- GPROOT:Go的安裝路徑
- GOPATH:Go的工程路徑(如果有多個,就以分號分隔新增)
在PATH中增加:D:\Go\bin;%GOPATH%\bin;
注:需要把GOPATH中的可執行目錄頁配置到環境變數中,否則下載的第三方go工具就無法使用了。
2.檢視是否安裝成功
- go env:檢視得到的go的配置資訊
- go version:檢視go的版本號
編譯工具安裝
這裡使用的編譯編譯工具是goland,比較方便好用,用慣了IDEA的,用這個很順手。
1.下載goland,地址見百度網盤: 連結:pan.baidu.com/s/1xEUsFpnf… ,提取碼:t5mt 。
2.安裝
安裝屬於傻瓜式安裝,一路next即可,破解方法也在百度網盤中。
Hello World
package main
import "fmt"
func main() {
/* 這是一個簡單的程式 */
fmt.Println("Hello World")
}
複製程式碼
1.第一行 package main 定義了包名。必須在原始檔非註釋的第一行指明這個檔案屬於哪個包,如:package main,表示一個科獨立執行的程式,每個Go應用程式都包含一個名為main的包。
2.下一行 import "fmt",告訴Go編譯器這個程式需要使用fmt包,fmt包中實現了格式化IO的函式。
3.下一行的 func main() 是程式的入口。main函式式每一個可執行程式必須包含的,一般來說都是在啟動後的第一個可執行函式,如果有 init() 函式,則先執行 init() 函式。
4.下一行/* … */ 是註釋,在程式執行時被忽略。
5.下一行 fmt.Println( .. ) 可以將字串輸出到控制檯上,並在最後增加換行符 \n 。
編碼規範
註釋
- 單行註釋是最常見的註釋形式,可以再任何地方使用以 // 開頭的單行註釋
- 多行註釋也叫塊註釋,均已 /* 開頭,並以 */ 結尾,且不可以巢狀使用,多行註釋一般用於文件描述或註釋成塊的程式碼片段。
識別符號
- 識別符號是用來命名變數、型別等程式實體。一個識別符號實際上就是一個或者多個字母數字、下劃線組成的序列,但是第一個字元必須是以字母或者下劃線,而不能是數字。
- Go不允許在識別符號中使用@、$和&等識別符號。
- Go是一種區分大小寫的語言。
空格
- Go語言中變數的宣告必須使用空格隔開,如:var age int
- 語句中適當使用空格可以讓程式更簡易閱讀
- 在變數與運算子間增加空格,程式會更加美觀。
語句的結尾
- 在Go程式中,一行代表一個語句結束,不用使用分號結尾
- 如果需要將多個語句寫在一行,必須使用分號區分
可見性規則
- Go語言中,使用大小來決定識別符號(常量、變數。介面、型別、結構或者函式)是否可以被外部包所呼叫
- 以大寫字母開頭,表示可以被外部包的程式碼所呼叫,此時就類似於Java中加了public
- 以小寫字母開頭,則對包外是不可見的,就型別與Java中加了private
Go程式結構組成
Go一般程式
// 當前的包名
package main
// 匯入包名
import . "fmt"
// 常量定義
const PI = 3.14
// 全域性型別的宣告和賦值
var name = "Joe"
// 一般型別宣告
type newType int
// 結構的宣告
type Joe struct {}
// 介面的宣告
type xbq interface {}
// 由main函式作為程式入口點啟動
func main() {
Println("hello World")
}
複製程式碼
Go檔案的基本組成
- 包宣告
- 引入包
- 函式
- 變數
- 語句 & 表示式
- 註釋
Go檔案結構組成
- Go程式是通過 package 來組織的
- 只有 package 名稱為 main 的包可以包含 main 函式
- 一個可執行程式有且僅有一個 main 包
- 通過 import 關鍵字來匯入其他非main包
- 可以通過 import 關鍵字單個匯入,也可以多個匯入
- 程式一般由關鍵字、常量、變數、運算子、型別和函式組成
- 程式中可能會使用這些分隔符,括號、中括號 和 大括號
- 程式中可能會使用這些標點符號,點(.)、逗號(,)、分號(;)、冒號(:)、省略號(…)
- 通過在函式體外部使用 var 關鍵字來進行全域性變數的宣告和賦值
- 通過 type 關鍵字來進行結構(struct)和介面(interface)的宣告
- 通過 func 關鍵字來進行函式的宣告
歡迎關注我的公眾號~ 搜尋公眾號: 翻身碼農把歌唱 或者 掃描下方二維碼: