## 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函数,一般用在数据库方面的包中