服务计算02——安装go语言开发环境

安装golang

  • 采用终端命令来安装golang

    $ sudo yum install golang
    
  • 可以查看安装的版本和安装目录

    $ rpm -ql golang |more
    
    $ go version
    

可以看到golang语言已经安装在了如下目录,版本是11.5
在这里插入图片描述
在这里插入图片描述

配置环境变量

  1. 创建工作空间

    $ mkdir $HOME/gowork
    
  2. 在 ~/.profile 文件中添加

    export GOPATH=$HOME/gowork
    export PATH=$PATH:$GOPATH/bin
    

    然后执行$ source $HOME/.profile 令配置的环境生效

  3. go env 检查配置
    在这里插入图片描述
    GOPATH和GOROOT均添加成功

运行Hello world

  • 安装并配置成功后,我们就可以试着编写一个go语言小程序了
  1. 可以在终端输入$ go 了解一系列go命令的执行方法:
    在这里插入图片描述

  2. 在工作空间内创建相应的包目录
    在这里插入图片描述

  3. 在该目录下创建hello.go文件,编写一个输出“hello world"的程序:

    package main
    
    import "fmt"
    
    func main() {
      fmt.Printf("hello, world\n")
    }
    
  4. 用go工具构建并安装此程序

    $ go install github.com/user/hello
    
  5. 这样,我们可以在终端直接运行生成的二进制文件或者运行go run hello.go
    在这里插入图片描述
    在这里插入图片描述

  6. 然后,我们可以初始化仓库,并提交第一次文件

    $ cd $GOPATH/src/github.com/user/hello
    $ git init
    $ git add hello.go
    $ git commit -m "initial commit"
    

    在这里插入图片描述

建立库和测试

  • 编写一个库,让hello程序使用它

  • 在如下路径创建包目录:

    $ mkdir $GOPATH/src/github.com/user/stringutil
    

    在该目录中创建reverse.go文件,内容如下:

    package stringutil
    
    func Reverse(s string) string {
    	r := []rune(s)
    	for i, j := 0, len(r)-1; i < len(r)/2; i, j = i+1, j-1 {
    		r[i], r[j] = r[j], r[i]
    	}
    	return string(r)
    }
    

    可以用$ go build 来测试该程序

  • 修改hello.go文件,在文件中调用stringutil包:

    package main
    
    import (
    	"fmt"
    
    	"github.com/user/stringutil"
    )
    
    func main() {
    	fmt.Printf(stringutil.Reverse("!oG ,olleH"))
    }
    

    然后,我们执行hello文件时,就能看到一条反向字符串的输出:
    在这里插入图片描述

    • go可以从远程代码库自动获取包,即用$ go get指令实现远程导入
    • $go get 可以从Mercurial,Git,Subversion,Bazaar等系统检查出代码包
    • go有一个轻量级的测试框架,由$ go test 命令和testing包构成
      我们可以为stringutil编写一个测试文件,内容如下:
    package stringutil
    
    import "testing"
    
    func TestReverse(t *testing.T) {
    	cases := []struct {
    		in, want string
    	}{
    		{"Hello, world", "dlrow ,olleH"},
    		{"Hello, 世界", "界世 ,olleH"},
    		{"", ""},
    	}
    	for _, c := range cases {
    		got := Reverse(c.in)
    		if got != c.want {
    			t.Errorf("Reverse(%q) == %q, want %q", c.in, got, c.want)
    		}
    	}
    
  • go test 运行该测试
    在这里插入图片描述

安装必要的工具和插件

安装git客户端

  • 使用如下指令安装git客户端:

    sudo yum install git
    

在这里插入图片描述
可以看到我们已经安装了当前最新版本的git客户端

安装VSCode编辑器

为了方便在CentOS中进行编程,我们可以安装VSCode这一轻量级的编辑器。

sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc

sudo sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" 

用yum指令安装

yum check-update
sudo yum install code

安装成功后,打开界面如下:
在这里插入图片描述

安装一些go工具

进入VSCode首页后,会提示我们要安装一些go语言的工具
但是由于https://golang.org/被wall,我们不能通过官方方法安装…
所以我们在本地创建一个目录,然后去github上下载:

mkdir $GOPATH/src/golang.org/x/
go get -d github.com/golang/tools

发现无法下载源码
在这里插入图片描述
我们可以进入目录后clone下来:

cd $GOPATH/src/golang.org/x
git clone https://github.com/golang/tools.git

最后进行安装

go install golang.org/x/tools/cmd/goimports

在这里插入图片描述

更多有关golang

安装gotour

go tour是Google搭建的基于浏览器的交互式go编程指南,可以有效的帮助我们学习go语言
使用如下指令安装并运行go tour

	$ go get github.com/Go-zh/tour/gotour
	$ gotour

go语言编程练习

  • 到这里,我的go语言开发环境就已经安装得差不多了。
    现在可以利用已有的工具和学习资源完成一些编程练习。
    比如,用go语言实现一个快速排序算法:
    在这里插入图片描述
    程序链接: http://139.9.57.167:20080/share/blv3b5ed0lit3phfpi50?secret=false

github: https://github.com/akanine/Install_golang

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值