# Golang
### (1). Why GO ?
速度快,可讀性高
### (2). Hello World
```go=
package main // package
import "fmt" //
func main() {
// print
fmt.Print("Hello world")
fmt.Printf("Hello world")
fmt.Println("Hello world","QuQ")
}
```
### (2). 指令
```
go version // 查看 Version
go run XXX.go
go build XXX.go
go mod init MOD名字 //
go get // 抓套件
go install // 將套件下載到設定黨
go fmt XXX.go // Coding Style 整理 (大專案不適用)
```
### (3). 變數
```go=
// var name <dataType> = value
var a int = 1
// a := value
a := 1
```
:::danger
```
## 注意 : 有沒用到的變數、package 會報錯
```
:::
### (4). 條件句
```go=
if a==1 {
fmt.Print("Hello world")
}else{
fmt.Print("Hello world")
}
```
### (5). Loop
TT 沒有 While,但可用
```go=
for i:=0;i<=10;i++{
fmt.Print("afdsfs")
}
```
### (6). Function
```go=
// func func_name (input) (output){ }
func name( a int )(c, b int){
// 功能
return 1,2
}
```
### (7). OOP
```go=
// struct
type V struct{
a int
b int
}
func ( test_v V ) func()(c, b int){ // 當前Methods屬於V
return test_v.a, test_v.b
}
```
### (8). Co-routine
```go=
func main() {
go func1()
func2()
}
```