这是学习Go语言的笔记。Go语言(又称 Golang)是 Google 的 Robert Griesemer,Rob Pike 及 Ken Thompson 开发的一种静态强类型、编译型语言。Go 语言语法与 C 相近,但功能上有:内存安全,GC(垃圾回收),结构形态及 CSP-style 并发计算。

0 Go语言的发展历史
Go语言是由Google公司发布的一种静态型、编译型的开源编程语言,是新时代的“C语言”。纵观这几年来的发展趋势,Go语言已经成为云计算时代重要的基础编程语言。
三位创始人:
- 罗伯特·格利茨默(Robert Griesemer)
- 罗伯·派克(Rob Pike)
- 肯·汤普森(Ken Thompson)
1 Go语言的特点和优势
- 简单易学
- 自由高效
- 强大的标准库
- 部署方便
- 原生支持并发
- 稳定性强
- 垃圾回收
2 Go语言结构组成
package main //定义包名
import "fmt" //导入依赖包
func main(){ //func main()是程序的入口,关键词func是Go函数的开头,程序中必须包含main()函数,作为程序执行的入口;若有init()函数则会先执行init()函数
fmt.Println("Hello, World!") //输出字符串到控制台,并在最后会自动换行
}
可总结一下几点:
1. 只有package名称为main的包可以包含main()函数。
2. 一个可执行程序有且仅有一个main包。
3. 通过import关键字来导入其他非main包。
4. 可以通过import关键字单个导入,也可以同时导入多个。
3 Go语言结构目录
GOPATH主要包含三个目录:bin、pkg、src。bin目录主要存放可执行文件;pkg目录主要存放编译好的库文件,如*.a文件;src目录主要存放Go的源文件。
4 Go语言的标识符
4.1 预定义标识符
概述:是Go语言系统预先定义的标识符,具有见名知义的特点。内置36个预定义标识符,如下表。

4.2 关键字
概述:也称保留字,是系统自带的,具有特殊含义的标识符。内置25个关键字,如下表。

4.3 自定义标识符
概述:用户根据需要自定义的标识符,一般用来给变量、类型、函数等程序实体起名字。
要求:自定义标识符实际上是一个或多个字母(A~Z和a~z)、数字(0~9)、下画线(_)组成的序列,但是第一个字符必须是字母或下画线开头,而不能是数字。Go语言不允许在自定义标识符中使用@、$和%等符号,也不允许讲关键字用作自定义标识符。Go语言是一种区分大小写的编程语言。
错误的自定义标识符
|
错误原因
|
---|---|
1xy | 以数字开头 |
case | Go语言的关键字 |
chan | Go语言的关键字 |
nil | 预定义标识符 |