1.1什么是go语言
Go 是一个开源的编程语言,它能让构造简单、可靠且高效的软件变得容易。 Go是从2007年末由Robert Griesemer, Rob Pike, Ken Thompson主持开发,后来还加入了Ian Lance Taylor, Russ Cox等人,并最终于2009年11月开源,在2012年早些时候发布了Go 1稳定版本。现在Go的开发已经是完全开放的,并且拥有一个活跃的社区。计算机软件经历了数十年的发展,形成了多种学术流派,有面向过程编程、面向对象编程、函数式编程、面向消息编程等,这些思想究竟孰优孰劣,众说纷纭。
除了OOP外,近年出现了一些小众的编程哲学,Go语言对这些思想亦有所吸收。例如,Go语言接受了函数式编程的一些想法,支持匿名函数与闭包。再如,Go语言接受了以Erlang语言为代表的面向消息编程思想,支持goroutine和通道,并推荐使用消息而不是共享内存来进行并发编程。总体来说,Go语言是一个非常现代化的语言,精小但非常强大。
go语言的应用十分广泛,其主要特征或效用有
- 高性能、高并发
- 语法简单
- 拥有丰富的标准库
- 完善的工作链
- 静态链接
- 快速编译
- 跨平台
- 垃圾回收
因为之前有过C语言的学习经历,所以上手稍微比较容易,个人认为比C++以及JAVA或者低级汇编语言入门轻松许多。 和从前一样,学习一门新语言我们选择从一个“hello”程序上手
首先安装开发环境golang
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
以上就是第一个 Go 程序 hello.go
然后我们可以使用go run指令来执行go代码。如下
$ go run hello.go
Hello, World!
因为显示原因,这部分不使用代码段展示。
1.2go语言的语法
在我看来,学习一门新语言,还是要从语法入手。
Go 标记
Go 程序可以由多个标记组成,可以是关键字,标识符,常量,字符串,符号。如以下 GO 语句由 6 个标记组成:
fmt.Println("Hello, World!")
6 个标记是(每行一个):
- fmt
- .
- Println
- (
- "Hello, World!"
- )
行分隔符
在 Go 程序中,一行代表一个语句结束。每个语句不需要像 C 家族中的其它语言一样以分号 ; 结尾,因为这些工作都将由 Go 编译器自动完成。
如果你打算将多个语句写在同一行,它们则必须使用 ; 人为区分,但在实际开发中我们并不鼓励这种做法。
以下为两个语句:
fmt.Println("Hello, World!")
fmt.Println("青训营")
注释
注释不会被编译,每一个包应该有相关注释。
单行注释是最常见的注释形式,你可以在任何地方使用以 // 开头的单行注释。多行注释也叫块注释,均已以 /* 开头,并以 */ 结尾。
标识符
标识符用来命名变量、类型等程序实体。一个标识符实际上就是一个或是多个字母(AZ和az)数字(0~9)、下划线_组成的序列,但是第一个字符必须是字母或下划线而不能是数字。
字符串连接
Go 语言的字符串连接可以通过 + 实现:
实例:
import "fmt"
func main() {
fmt.Println("Google" + "www")
}
输出结果:
Googlewww