Go语言入门(环境搭建和HelloWorld)

1、初识GO语言

1.1、go语言是什么?

Go 是一个开源的编程语言,支持交叉编译、编译快速,开发效率好,支持匿名函数与闭包,执行性能强,天生支持并发。

1.2、Go语言用途

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

2、GO语言开发环境搭建

2.1、windows环境搭建

1、下载和安装Go 语言环境

Go 语言环境安装包下载:https://golang.google.cn/dl/

windows选择下载:

将下载好的文件安装,默认安装路径是C:\Go。

可以直接选择默认路径安装也可以修改路径(修改时最好选择比较方便访问的路径)。

打开cmd 输入

go version

可以显示版本信息即安装成功

2、配置GOPATH

GOPATH的值就是将来的代码存放的地方。

找到我们想要用来存放代码的地方,新建一个文件夹Go。

我选择的是D盘下新建Go文件夹,这里面将用来存放我们以后开发相关的东西。

进入Go文件夹,新建三个文件夹,名称分别为bin、pkg、src。

进入系统环境变量

  • 删除默认创建的GOPATH

配置GOPATH环境变量,新建系统环境变量。
名称为GOPATH,值为保存的路径(D:\GO)
(默认路径为:C:\User\用户名\go,前面已经删除)

修改用户变量Path里面默认的go\bin
改为我们刚刚新建的Go文件夹下的bin文件夹

打开cmd输入以下代码,查看环境是否修改成功

go env

src下新建一个文件夹,代表代码托管的地方,如GitHub,公司的代码管理器

进入新建的文件夹,再新建一个文件夹,代表用户,是谁的代码

在进入这个文件夹,里面放一个一个的项目

3、安装VScode

下载VScode

https://code.visualstudio.com/

安装Chinese插件

然后点击右下角重启

安装Go插件(与之前类似)

4、第一个Go程序

使用VScode打开我们新建的src文件夹

这个时候我们发现文件夹连在一块了:

解决方法:点击:文件-->首选项-->设置 (或快捷键 ctrl + ,

新建一个项目文件夹,名称为Helloworld,在项目文件夹内新建main.go文件

编写以下代码:

//包声明,package main表示一个可独立执行的程序
package main

//导入fmt包,fmt 包实现了格式化 IO(输入/输出)的函数。
import "fmt"

//程序开始执行的函数,一般来说都是在启动后第一个执行的函数
//(如果有 init() 函数则会先执行该函数)。
func main() {
   /* 这是我的第一个简单的程序 */
   fmt.Println("Hello, World!")
}

此时右下角不断有提示:

我们点击Install All(安装Go语言的提示插件)

若控制台出现以下内容,则因为网络的原因安装失败

* 下载go插件超时解决方法

win10解决方法:

配置环境变量

配置用户环境变量

  • 新建名称为

GO111MODULE

值为

on

  • 确定

  • 新建名称为

GOPROXY

值为

https://goproxy.cn

  • 确定

更多的可以参考:https://github.com/goproxy/goproxy.cn

重启vscode 选择Install All

vs下载完成后需要将配置的两个系统变量删除,否则会出现编译问题

更多的可以参考:https://github.com/goproxy/goproxy.cn

编译执行

相关命令:

go build

1、在项目目录下执行

2、在项目路径外的,需要在后面添加上项目的路径(项目路径从GOPATH/src后开始写起),编译产生的可执行文件就保存在当前目录下。

3、打包成别的名字:后面加上 -o 新的名字

go build -o newname

4、go install

go install

会先执行go build,然后将生成的文件拷贝到GOPATH/bin目录下,以后在任意位置都可以执行这个程序。

go平台支持交叉编译

运行:直接输入编译出来得二进制文件即可

注意:现在vscode默认得shell是使用prowershell的,我们要更改为cmd的,避免使用prowershell复杂的语法

若没有cmd选项的,选择选择默认shell,然后选择第一个

然后关闭当前的终端,右键项目--在集成终端打开,这个时候使用的就是cmd了。

posted @ 2020-11-07 00:44  Kang1387  阅读(169)  评论(0编辑  收藏  举报