## 1:go程序的目錄結構
```
package main
import "fmt"
func main() {
fmt.Println("Hello, 世界")
}
```
執行流程
使用go build
.go文件->編譯長城可執行文件->運行
使用go run(編譯和運行在一步操作)
.go文件->結果
編譯生成的文件可以直接在其他機器上運行(即使沒有go的sdk環境也是可以運行的所以編譯生成的文件將一些資源也打包進來導致編譯后的文件很大)
### **什么是編譯**
1)有了go源文件,通過編譯器將其編譯成機器可以識別的二進制碼文件
2)在 該源文件目錄下,通過go build 對hello.go文件進行編譯。可以指定生成可執行文件名,在windows下必須是.exe后綴
3)如果程序沒有錯誤沒有任何提示,會在當前目錄下出現一個可執行文件,該文件是二進制碼文件,也是可以執行的程序
4)如果有錯誤程序會提示
## **Go語言快速開發入門注意事項**
1)源文件以go為擴展名
2)Go應用程序的執行入口是main()函數
3)Go語言嚴格區分大小寫
4)Go方法是由一條條語句構成,每個語句后不需要分號(Go會在每行編譯時自動加分號)這也體現了go的簡潔性
5)Go編譯器是一行行便宜的,因此我們一行就寫一條語句們不能吧多條語句卸載同一行,否則報錯
6)Go語言定義的變量或者import包如果沒有使用到,代碼不能編譯通過
7)大括號是成對出現的缺一不可
## **go的轉義符(escape char)**
1) \t : 表示一個制表符,通常使用它可以排版
2) \n :換行符
3) \\ :一個\
4) \" :一個"
5) \r :一個回車 fmt.Println("天龍八部雪山飛狐\r 張飛");
注意:\r回車,重當前行的最前面開始輸出,覆蓋掉以前的內容
## **正確的注釋和注釋風格**
1) Go 官方推薦使用行注釋來注釋整個方法和語
2)Go 源碼 也是 單行注釋// 當然也可以使用塊注釋/* */
#### 正確的縮進和空白
1) 使用一次 tab 操作,實現縮進,默認整體向右邊移動,時候用 shift+tab 整體向左移看老師的演示:
2) 或者使用 gofmt 來進行格式化 \[演示\]
#### Go 語言的代碼風格
運算符兩邊習慣性各加一個空格。比如:2 + 4 * 5(不是必須)
```
package main
import "fmt" func main() {
fmt.Println("hello,world!")
}
//上面的寫法是正確的.
package main
import "fmt" func main()
{
fmt.Println("hello,world!")
}
//Go 語言不允許這樣編寫Go 設計者思想: 一個問題盡量只有一個解決方法
```
一行最長不超過 80 個字符,超過的請使用換行展示,盡量保持格式優雅
## Go import使用及. \_的作用解析
1、使用點操作引入包時,可以省略包前綴:
import(. "fmt")
注意上面 fmt前多了 . 字符。代碼中使用時:
Println("hello world")
前綴fmt就不需要了。
2、別名操作可以給包起個小名兒
3、由于go在引入包時調用包的init方法。所以使用\_操作,主要是為了使用包的init函數,一般用在數據庫方面的包中