我的Go+语言初体验——Go+简单应用—选择排序

Linux猿 社区初级贡献者
Linux领域优质创作者
博客专家认证
2021-12-04 09:32:51

“我的Go+语言初体验” | 征文活动进行中......

点击阅读原文:我的Go+语言初体验——Go+简单应用—选择排序

目录

一、什么是 Go+ ?

二、安装配置 Go+

2.1 安装配置 Go

2.2 安装配置 Go+

三、Go+ 实践

四、总结


本文带大家来体验一下 Go+,主要包括 Ubuntu 20.04 环境下 Go+ 的安装和配置以及 Go+ 的简单应用实战-选择排序。赶紧来看下吧!

一、什么是 Go+ ?

Go+ 于 2020 年 7 月正式发布,2021 年 10 月推出 1.0 版本,它是七牛云 CEO 许式伟发明的一门可用于工程、STEM 教育和数据科学的编程语言。

Go+ 主要面向三个领域,分别是工程、STEM教育、科学数据,具有更简单、更强大、兼容性更强的特点。

🔶🔶🔶🔶🔶 我是华丽的分割线 🔶🔶🔶🔶🔶

二、安装配置 Go+

下面的安装配置是在 Ubuntu 20.04 环境下进行的,如下所示:

linuxy@linuxy:~$ uname -a
Linux linuxy 5.11.0-41-generic #45~20.04.1-Ubuntu SMP Wed Nov 10 10:20:10 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
linuxy@linuxy:~$

2.1 安装配置 Go

安装 Go+ 之前,需要先安装好 Go 的环境,依次执行如下命令。

linuxy@linuxy:~$ wget https://studygolang.com/dl/golang/go1.17.5.linux-amd64.tar.gz
linuxy@linuxy:~$ tar -zxvf go1.17.5.linux-amd64.tar.gz

如果想下载别的版本,可以到中文官网下载即可。

注意:建议用最新的 Go 版本包,刚开始使用1.15.x 的版本会有问题。

然后,修改配置文件 /etc/profile,添加如下内容:

export GOROOT=/usr/local/go     # Golong 安装目录
export GOPATH=$HOME/goProject   # 将来的工作目录
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin # 将 $GOROOT 和 $GOPATH 加入到 PATH中,方便使用
export GOPROXY=https://goproxy.io # 设置代理

执行如下命令:

linuxy@linuxy:~$ source /etc/profile

 最后,查看一下 go 的版本,输出版本信息表示安装成功,如下所示:

linuxy@linuxy:~$ go version
go version go1.17.3 linux/amd64
linuxy@linuxy:~$ 

Go 安装完成。 

2.2 安装配置 Go+

首先,克隆 Go+ 仓库代码,然后,进入 gop 目录,安装即可,如下所示:

git clone https://github.com/goplus/gop.git
cd gop
 
# On linux run:
./all.bash
# On Windows run:
all.bat

安装完成后,可以将 gop 的 bin 目录添加到 PATH 中,修改 /etc/profile 文件,在文件结尾添加如下内容:

export PATH=$PATH:{Go+的bin目录}

用真实的 Go+ bin 目录绝对路径替换 {Go+的bin目录} 即可。

修改后,加载配置,执行如下命令:

linuxy@linuxy:~$ source /etc/profile

 最后,执行如下命令,查看 Go+ 版本,如下所示:

linuxy@linuxy:~$ gop version
gop v1.0.32-24-g3ed0beb8 linux/amd64
linuxy@linuxy:~$ 

好了,Go+ 安装完成,下面赶紧来使用一下吧!

 

🔶🔶🔶🔶🔶 我是华丽的分割线 🔶🔶🔶🔶🔶

 

三、Go+ 实践

下面就来实践一下,使用 Go+ 实现选择排序,代码如下所示:

a := []int{23, 43, 14, 52, 46, 72, 67}
for i := 0;	i < len(a) - 1; i++ {
	Min := i;
    for j := i+1; j < len(a); j++ {
        if a[j] < a[Min] {
            Min = j
        }
    }
    if Min != i {
		a[i], a[Min] = a[Min], a[i]
    }
}
print a

将上述代码放入 main.gop 文件中,执行如下命令即可:

gop run main.gop

输出结果为:

[14 23 43 46 52 67 72]

 

🔶🔶🔶🔶🔶 我是华丽的分割线 🔶🔶🔶🔶🔶

 

四、总结

从安装配置到使用体验,整体使用体验不错,语法更加简单优雅,更趋向于低代码开发,赶紧动手体验下吧!

“我的Go+语言初体验” | 征文活动进行中......

...全文
1134 4 打赏 收藏 举报
写回复
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
pentral0311 2021-12-14
  • 打赏
  • 举报
回复 1

这个C这么像

Linux猿 社区初级贡献者 2021-12-15
  • 举报
回复 1
@pentral0311
ShirleyQueen321 2021-12-08
  • 打赏
  • 举报
回复 2
👍👍👍
Linux猿 社区初级贡献者 2021-12-11
  • 举报
回复 1
@ShirleyQueen321
相关推荐
发帖
Go+ 开发者社区

924

社区成员

Go+ 官方开发者社区。我们希望向广大的开发者和数据科学家介绍 Go+ 的定位和意义,并邀请更多开发者一起贡献代码、共建 Go+ 生态。 Go+ 官网:https://goplus.org/
其他 企业社区
社区管理员
  • Go+
  • 杨东杰
加入社区
帖子事件
创建了帖子
2021-12-04 09:32
社区公告

本社区为 Go+ 官方开发者社区。我们希望向广大的开发者和数据科学家介绍 Go+ 的定位和意义,并邀请更多开发者一起贡献代码、共建 Go+ 生态。

Go+ 官网:https://goplus.org/
GitHub地址:https://github.com/goplus/gop