介绍
Go语言是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。为了方便搜索和识别,有时会将其称为Golang。
Go语言于2009年11月正式宣布推出,成为开放源代码项目,并在Linux及Mac OS X平台上进行了实现,后来追加了Windows系统下的实现。
2012年,Go语言的创造者们发布了它的1.0版本。Go语言的创造者们包括Unix操作系统和B语言(C语言的前身)的创造者、UTF-8编码的发明者Ken Thompson,Unix项目的参与者、UTF-8编码的联合创始人和Limbo编程语言(Go语言的前身)的创造者Rob Pike,以及著名的Javascript引擎V8的创造者Robert Griesemer。
特点
Go语言是一门强类型的通用编程语言。它的基础语法与C语言很类似,但对于变量的声明有所不同,也对其他的一些优秀编程语言有所借鉴。另外,Go语言支持垃圾回收。
与C++相比,Go语言并不包括如异常处理、继承、泛型、断言、虚函数等功能,但增加了 Slice 型、并发、管道、垃圾回收、接口(Interface)等特性的语言级支持。
Go语言对并发编程的支持是天生的、自然的和高效的。Go语言为此专门创造出了一个关键字“go”。使用这个关键字,我们就可以很容易的使一个函数被并发的执行。
撰写风格
在Go语言中有几项规定,而且这些是强制的,当不匹配以下规定时编译将会产生错误。
1.每行程序结束后不需要撰写分号;
2.大括号{不能够换行放置。
3.if 判断式和 for 循环不需要以小括号包覆起来。
代码示例
所有语言的第一个程序都是“hello world”,我们也不例外,在这里用Go语言写一个“hello world”程序。
package main
import "fmt"
func main(){
fmt.Printf("Hello World!");
}
这段代码运行,会在控制台下打印出“hello world!”。
如果你把fmt.Printf("Hello World!")改为fmt.Println("Hello World!"),在打印“Hello World”后换行。
还有值得注意的一点是:Golang官方的约定是每行程序结束后不需要撰写分号;,但是如果你不小心加了,编译器也不会报错,笔者的编译器是go1.9.2 windows/amd64。