这是我参与「第三届青训营 -后端场」笔记创作活动的的第1篇笔记
1.什么是GO语言?
Go(又称Golang)是Google公司开发并于2009年11月正式推出的一门编程语言
2.GO语言具有哪些优点?
-
高性能、高并发 其性能与 Java 或 C++相似。在我们的使用中,Go 一般比 Python 要快 30 倍。 创建goroutine这个面向线程的轻量级方法,实现高并发。
-
语法简单、学习曲线平缓 GO语言只有25个关键字,以及其精简的语法,让其学习难度比其他多种语言都更低。
-
丰富的标准库 Go标准库包含了大量包,提供了丰富广泛的功能特性。 以下提供查看标准库的链接:
- 静态链接 静态链接的特点在于链接器会将程序中使用的所有库程序复制到最后的可执行文件中。而动态链接只会在最后的可执行文件中存储动态链接库的位置,并在运行时调用。
因此静态链接要更快,可移植,因为它不需要在运行它的系统上存在该库。但是在磁盘和内存上占用更多的空间。而GO语言在默认情况下是静态链接的。
-
快速编译 当前我们使用GO编写的最大微服务的编译时间只需要6秒。相较于java和C++的编译速度,GO的快速编译是一个主要的效率优势。
-
跨平台 支持windows,linux,android等多平台开发。
-
垃圾回收 GO自带内存回收,不需要开发人员管理内存,使开发人员可以更加专注于业务实现。
3.GO语言基础语法
- Hello World GO语言里的程序入口包为main包,下面用GO语言中hellowworld的格式来分析:
package main //表示这个文件属于main包的一部分
import "fmt" //导入标准库里的fmt包
func main() {//程序的主入口
fmt.Println("hello world!") //调用fmt包中的Println函数来输出helloworld
}
- 变量 GO语言中的变量遵循一个规则:声明的变量必须被使用! 变量声明的方式有两种,如下:
//第一种声明格式:
var name type
//举例声明一个为string类型的名为name的变量
var str string
//第二种声明方式:
name := xxx //变量名 := 某种数据类型的具体值
//批量声明变量格式
var (
name1 type1
name2 type2
.
.
.
)