Go起步:1、开发环境的配置--Windows和Linux

GO是google发布的一款开源编程语言。正如去官网所说的那样–Go是一个开源编程语言,可以很容易地构建简单,可靠,高效的软件(Go is an open source programming language that makes it easy to build simple, reliable, and efficient software.)。Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全、支持并行进程。更多信息可以查看官网https://golang.org/得到。
想了解一门编程语言,肯定需要安装尝试,要得到Go可以到官网的下载地址https://golang.org/dl/下载相应平台的版本。因为Go是跨平台和开源的,所以可以看到有Windows,Mac和Linux及源码包的四个版本。目前最新版是1.6.3。

Windows平台

直接是msi的可安装文件,双击安装后配置环境变量
默认安装到C:\Go
设置go需要的变量

GOROOT=C:\Go
GOBIN=%GOROOT%\bin
GOPATH=E:\workspace\go\gopath

其中GOPATH的作用是告诉Go在那里去找到安装在你系统上的Go包。所以以后使用go get命令得到的包都会下载到那里。可以设置多个路径,用分号(;)分隔。需要注意的是go get会将代码下载到GOPATH里面的第一个项目目录里面。
将GOBIN加入到PATH中
这里写图片描述
这里写图片描述
确保path中可以查到go的bin目录。有时我将GOBIN直接放到path中时会解析不到,不知什么原因,如果在遇到这个问题我会把go/bin的路径直接加入到path中。
检查go的环境配置

go version

这里写图片描述
输出版本信息就是是安装完成。
查看go的设置可以使用go evn。

go evn

这里写图片描述

Linux平台

在Linux上安装其实和windows差不多,甚至更容易些.毕竟Linux在软件开发方面对比windows还是有些许优势的.我的Linux发行版选择的是Ubuntu.
同样也是设置环境变量.如果希望对全体用户生效,则设置在/etc/profile里,如果只希望对个别用户剩下则设置在相应用户主目录下的.profice里.
我是设置在/etc/profile里.使用vim打开/etc/profile文件,在最后增加如下设置:

export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin
export GOPATH=$HOME/workspace/go

然后注销或者使用source /etc/profile使环境变量生效.
这里写图片描述
这样,Linux下的环境就配置完成了.
至于Mac的配置,因为一直没有钱买个Mac所以也就不去配置使用了。不过想来应该和Linux相差不大吧。

Hello World

剩下的都是套路了.官网一进去可以看到一个例子.

package main

import "fmt"

func main() {
    fmt.Println("Hello, 世界")
}

新建一个文件hello.go保存以上代码.使用go build编译,执行.
这里写图片描述
如果go build不指定名称,默认编译的文件是已当前目录为名的.我的hello.go在目录mungo下,所以编译完后就是mungo的可执行文件.执行之后可以看到屏幕输出了”Hello 世界”的欢迎语.

代码解读

Go程序都是一个package声明开始的,表示该Go代码所属的包,如上面的main。包是Go语言里的基本的分发单位,也是工程管理中依赖关系的体现。而且如果要生成Go可执行程序,必须建立一个名字为main的包,并且在该包中包含一个叫main()的函数,该函数是Go可执行程序的执行起点。main()函数不能带参数,也不能定义返回值。
在包声明之后,是一系列的import语句,用于导入该程序所依赖的包。像上面的程序中用到的Println()函数属于fmt包,所以需要import fmt。 有一点需要注意,不得包含在源代码文件中没有用到的包,否则Go编译器会报编译错误。 这个不知道为什么设计成这样,一开始很不习惯。
在下面func关键字就是定义函数了。上面定义的main()函数没有参数和返回值。
花括号{}里面即使方法体了。上面的程序就是在屏幕打印出“Hello, 世界”的问候语。需要特别注意的是:右花括号{不能另起一行。否则编译会报错。而且语句结束后可以不加分号的
通过这个简单的程序就可以发现go不同于java或者C的很多语法特性。这些目前我谈不上理解他们的好处,也说不出坏处,可能这就是 了Go 语言在语言层面解决软件工程问题的设计哲学,这些以后慢慢理解吧。

学习参考

这里介绍一下我在接触学习Go的用到的一些资料。主要是下面的三个方面。当然网络还有很多其他的资源,不限于这些。

这样,今天就把Go的使用环境打好了,以后的Go的世界就可以慢慢探索了。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值