2.1Go语言特性

1.1.2. 编程语言类型

静态语言,动态语言

静态语言:强类型语言

​    定义变量,必须指明数据类型,存储对应类型的数据。

​    例如java,go,c

动态语言:弱类型语言

​    定义变量,赋值过程决定变量类型

​    如js,python

1.1.3. Go程序执行流程

对源代码编译成二进制后运行

.go代码源文件    >    go build    >    可执行文件(.exe或linux二进制命令)    >    运行结果

对源代码直接运行

.go代码文件        >    go run         >    结果
源代码                编译且运行(不会生成二进制命令)

二者区别

1.使用go build编译生成的二进制的程序,可以直接放在同类系统上直接运行,无须go开发环境
2.go run运行代码,在另一台及其上,仍然需要go开发环境,否则无法运行
3.go build,编译器会对程序依赖的库文件打包在可执行文件中,因此可执行文件体积稍大
4.windows环境go build生成的二进制命令文件,名字以.exe结尾
5.Linux环境go build 生成一个同名的二进制命令

1.1.4. Go语言注意事项

1.Go代码都是以.go后缀
2.Go代码的执行入口函数是main()函数
3.Go语言严格区分大小写
4.Go代码语句结尾不需要分号,编译器自动识别
5.Go代码按行进行编译,一行尽量只写一条语句
6.Go语言的简洁性使得代码中不得含有未使用的变量,以及未使用的包
7.Go语言通过大括号控制代码
8.使用go fmt 统一代码风格

1.1.5. Go语言的转义字符(escape char)

\t    一个制表符,代表一次tab
\n    换行符
\\    转义代表 \
\"    转义代表 "
\r    一个回车,从当前行的最前面开始输出,会覆盖以前的内容,常配合\r\n换行使用

1.1.6. Go语言注释

代码注释是用于解释程序的文字,注释可以提高代码可读性

//        行注释
//本行已被注释

/* */块注释

/* 本段落被注释
本段落被注释*/

对于行注释和快注释,被注释的内容不会被Go编译器执行
注意: 块注释中不得嵌套块注释

1.1.7. Golang官方标准API文档

https://golang.org/pkg

1) API (Application Programming Interface,应用程序编程接口)是 Golang 提供的基本编程接口。
2) Go 语言提供了大量的标准库,因此 google 公司 也为这些标准库提供了相应的 API 文档,用于告 诉开发者如何使用这些标准库,以及标准库包含的方法。
3) Golang 中文网 在线标准库文档: https://studygolang.com/pkgdoc

1.1.8. Go语言命名

编码:源码文件必须是 UTF-8 格式,否则会导致编译器出错。
命名:采用 camelCasing 风格(驼峰命名法),不建议使用下划线。

1.1.9. 编码格式

ASCII 美国标准信息交换码
中国:GBK,中文常用字符
台湾:大五码

unicode编码,万国码,统一全世界的编码,把所有编码进行排号,拥有自己的编码,不兼容其它码表
UTF-8 变长字符集