golang 环境安装与hello world

来源:互联网 发布:网络金融平台监管部门 编辑:程序博客网 时间:2024/06/11 08:50

本文目录结构为:

  • go简介
  • go开发环境安装配置
  • 第一个程序示例验证环境是否OK

1.先让我们认识一下golang

Go 是一个开源的编程语言,它能让构造简单、可靠且高效的软件变得容易。

Go是从2007年末由Robert Griesemer, Rob Pike, Ken Thompson主持开发,后来还加入了Ian Lance Taylor, Russ Cox等人,并最终于2009年11月开源,在2012年早些时候发布了Go 1稳定版本。现在Go的开发已经是完全开放的,并且拥有一个活跃的社区。
Go 语言特色

简洁、快速、安全并行、有趣、开源内存管理、v数组安全、编译迅速

Go 语言用途

Go 语言被设计成一门应用于搭载 Web 服务器,存储集群或类似用途的巨型中央服务器的系统编程语言。

对于高性能分布式系统领域而言,Go 语言无疑比大多数其它语言有着更高的开发效率。它提供了海量并行的支持,这对于游戏服务端的开发而言是再好不过了。

2.然后,我们来配置golang的开发环境

  • 下载你系统对应版本的安装包,下载地址(golang下载),各版本列表如下,以最新版本为例:
    这里写图片描述
    官方发布版本可使平台为:FreeBSD (release 8-STABLE 及以上), Linux, Mac OS X (10.8及以上), Windows系统的32位 (386)和64-bit (amd64) x86处理架构.

    如果发行版本不能在你的系统中使用,你也可以通过源码编译安装或者安装gccgo而不是gc.

    系统要求
    三列分别是系统、架构以及注意事项
    这里写图片描述

  • UNIX/Linux/Mac OS X, 和 FreeBSD 安装

    以下介绍了在UNIX/Linux/Mac OS X, 和 FreeBSD系统下使用源码安装方法:

    1、下载源码包:go1.8.3.linux-amd64.tar.gz。
    可以通过浏览器下载,也可以通过命令下载,示例为ubuntu 下利用wget(wget用法参考)命令下载
    这里写图片描述

    2、将下载的源码包解压至 /usr/local目录。

    tar -C /usr/local -xzf go1.8.3.linux-amd64.tar.gz

    3、将 /usr/local/go/bin 目录添加至PATH环境变量:

    export PATH=$PATH:/usr/local/go/bin

    注意:MAC 系统下你可以使用 .pkg 结尾的安装包直接双击来完成安装,安装目录在 /usr/local/go/ 下。

    (通常这些命令都需要root权限或者通过sudo执行)

    安装到指定目录

    go语言的二进制发行版默认会安装到/usr/local/go (或者 c:\Go Windows系统中),但是我们也可以安装到我们指定的目录中去,这种情况下你必须设置GOROOT环境变量去指向你的安装目录

    例如你安装到了自己的家目录下,你应该在$HOME/.profile中添加以下命令去指定安装位置

    export GOROOT=$HOME/go1.Xexport PATH=$PATH:$GOROOT/bin

    注意: GOROOT只需要在定制安装时才应该进行设置

    Windows 系统下安装

    Windows 下可以使用 .msi 后缀(在下载列表中可以找到该文件,如go1.4.2.windows-amd64.msi)的安装包来安装。

    默认情况下.msi文件会安装在 c:\Go 目录下。你可以将 c:\Go\bin 目录添加到 PATH 环境变量中。添加后你需要重启命令窗口才能生效。

3.运行一个测试程序验证安装的正确性

在你的开发目录下建立一个名为ifgook.go的文件,并在文件中输入以下代码:

package main //1import "fmt" //2func main() {//3   fmt.Println("Hello, World!")//4}

程序解释

第1行代码 package main 定义了包名。你必须在源文件中非注释的第一行指明这个文件属于哪个包,如:package main。package main表示一个可独立执行的程序,每个 Go 应用程序都包含一个名为 main 的包。第2行 import "fmt" 告诉 Go 编译器这个程序需要使用 fmt 包(的函数,或其他元素),fmt 包实现了格式化 IO(输入/输出)的函数。第3行 func main() 是程序开始执行的函数。main 函数是每一个可执行程序所必须包含的,一般来说都是在启动后第一个执行的函数(如果有 init() 函数则会先执行该函数)。第4行 fmt.Println(...) 可以将字符串输出到控制台,并在最后自动增加换行字符 \n。使用 fmt.Print("hello, world\n") 可以得到相同的结果。Print 和 Println 这两个函数也支持使用变量,如:fmt.Println(arr)。如果没有特别指定,它们会以默认的打印格式将变量 arr 输出到控制台。当标识符(包括常量、变量、类型、函数名、结构字段等等)以一个大写字母开头,如:Group1,那么使用这种形式的标识符的对象就可以被外部包的代码所使用(客户端程序需要先导入这个包),这被称为导出(像面向对象语言中的 public);标识符如果以小写字母开头,则对包外是不可见的,但是他们在整个包的内部是可见并且可用的(像面向对象语言中的 protected )。

接下来运行测试:
1.通用运行方式(以Ubuntu系统为例):
在代码文件同一层运行命令:
go run ifgook.go
这里写图片描述

2.windows下用go工具编译运行:

C:\> cd %USERPROFILE%\go\src\ifgookC:\Users\Gopher\go\src\ifgook> go build

然后执行

C:\Users\Gopher\go\src\hello> hellohello, world

当输出内容为hello, world时go语言的环境就安装好了