本文章适合那些想入门Go语言,却又不知道如何搭建自己的第一个HelloWorld的同学。
推荐几个Go语言相关学习网站:
C语言中文网: http://c.biancheng.net/golang/
Go语言中文网(上面有官方中文参考文档):https://studygolang.com/
本文章使用的编译器为GoLand,不使用此编译器的可以划过(虽然还有其他免费IDE,但是个人感觉GoLand较为好用)。
一:Go语言背景首先介绍一些关于Go语言的背景知识,内容大多百度来的,已经了解的同学直接跳过。
Go(又称 Golang)是 Google 的 Robert Griesemer,Rob Pike 及 Ken Thompson 开发的一种静态强类型、编译型语言。Go 语言语法与 C 相近,但功能上有:内存安全,GC(垃圾回收),结构形态及 CSP-style 并发计算。
罗伯特·格瑞史莫(Robert Griesemer),罗勃·派克(Rob Pike)及肯·汤普逊(Ken Thompson)于2007年9月开始设计Go,稍后Ian Lance Taylor、Russ Cox加入项目。Go是基于Inferno操作系统所开发的。Go于2009年11月正式宣布推出,成为开放源代码项目,并在Linux及Mac OS X平台上进行了实现,后来追加了Windows系统下的实现。在2016年,Go被软件评价公司TIOBE 选为“TIOBE 2016 年最佳语言”。 目前,Go每半年发布一个二级版本(即从a.x升级到a.y)(百度百科)
Go语言的优缺点可以自行百度,例如:https://blog.csdn.net/v157688/article/details/92805304
二:第一个HelloWorld 2.1 Go语言开发环境配置Go语言开发环境下载地址:https://studygolang.com/dl (选择Microsoft Windows版本下载)
下载后,打开安装,然后点击Next。
继续Next。
到这步,选择安装路径,我选的是D:\Go\,这个路径就是后面提到的GOROOT路径(重要),选好之后点Next。
继续点Install安装。然后等两分钟就装完了。
最后点Finish,这样,Go语言开发环境就安装完成了。
还有一步,配置Go的环境变量:
然后打开Path,添加环境变量:
这个时候,打开cmd,输入 go versioin就会出来当前安装的Go语言环境版本。我安装的版本为go1.13.5
到此,Go语言环境就安装完成了。
2.2 HelloWorld我用的Go语言编译器是GoLand。
GoLand下载地址:https://www.jetbrains.com/go/
GoLand破解教程:https://studygolang.com/articles/21812?fr=sidebar
GoLand的安装就不写了,随便安装,安装好后,打开如下图:
这时候我们点New Project,创建新项目。
创建项目的一些配置,下面的GOROOT就自动识别出我们刚安装的Go语言环境。
创建后如下图:
接下来,我们配置一下,我们的目录结构(包结构)
bin文件目录:用于存放编译\生成后的可执行文件(exe)
src文件目录:用于存放源代码
go.mod包管理文件就放在src下面就行。
之后,我们还要设置GOPATH、Module GOPATH路径。
在GoLand中,选择File->Settings,打开设置
这个时候,基本的配都设置好了,下面开始HelloWorld程序编写。
右击main包,选择New->Go File,新建Go文件。这里我们选择Simple Application ,对于要生成一个主入口程序文件,我们选Simple Application,这个和Empty File没什么太大区别,就仅仅多了一个main函数方法,其他都一样。名字随便起,我这里就叫HelloWorld了。
打印HelloWorld。我们用Go自带的打印方法打印。
输入:fmt.Println("HelloWorld GhostCakeMaker")
这时系统会自动识别并引入包所在的目录:import "fmt",因为这个是Go自带的SDK里的方法。可以自己识别到并自动添加,后面自己引用第三方的也一样。这里也强调一点,引入的是这个包所在的目录,在你用的时候才是包名。如:fmt.Println,这里的fmt才是包名。
万事俱备,只欠东风。就差运行了,让我们来构建一个Run/Debug Configuration。
GoLand中,运行Go有三种方式:
1、文件方式运行(File)
以单个文件的方式运行,最为简单,直接可以右击要运行的文件,选择Run或者Debug,则可以直接运行程序。
运行结果如下:
那右击后GoLand都做些什么了?其实运行所有程序都要配置Run\Debug Configurations的,只不过右击文件运行,GoLand帮你新建了一个默认的运行配置文件,我们来看下这个配置文件。在右上方,可以看到配置的地方,如果之前没有任何配置的话,会提示你Add Configurations,如果之前有过配置,会出现下拉框让你选择配置或者Edit Configurations,我刚把自动生成的配置给删掉了,现在重新手动添加一个,点Add Configurations。
然后选择"+”->Go Build,如下图:
默认的方式已Package的方式,这时我们选择Run Kind模式为File。
配置的名称可以自己随意定义,这里我们用默认的。
Files选择你要运行的那个文件全路径。
Output direcory就是build后生成exe文件所在目录。这里我们选择一开始新建的bin目录。
Run after build选项我们勾一下,表示在编译完成后,直接运行。否则,只编译,不运行。配置好后,点OK,如下图:
配置好后,点配置右边的Run或者Debug,就可以运行和调试了。
2、以包的方式运行(Package)
配置过程同上,这里不再重复了,Package有几个不一样的地方,
Run kind选择Package
Package path输入你main函数所在的包名,其他保持不变,这样就以包的方式去运行和调试了。如下图:
3、以整个目录的方式运行(Directory)
配置过程同上,这里不再重复了,Package有几个不一样的地方,
Run kind选择Directory
Directory输入你main函数所在的目录,其他保持不变,这样就以包的方式去运行和调试了。如下图:
这里有几个需要注意的地方:
1、不管你是以什么方式运行,你所要运行的入口,即main方法的所属包名(package)必须是"main"!如下所示:
到这里,我们就可以开发和调试一个简单的项目了,下面我们说一下如何引用第三方包。
三:引用第三方包在go.mod文件中加入第三方包的名称和版本,如果有多个的话,用括号=()括起来,如下图。这时,Goland就会在网上把包下载下来,保存在一开始
我们设置的Module GOPATH路径下pkg文件夹下。如果没有则创建文件夹。这个时候,我们只是下载了第三方包,还没有去引用它,所以还没有在External Libraries中有所体现。
接下来我们在程序中引用包,import后,会发现goland识别不了,这时我们把光标移动到红色位置,然后同时按下Alt+Enter,Goland会智能提示你需要同步包,我们点同步。
这时包已经同步下来了,在之前配置代理的时候要设置成https://goproxy.io,否则下载会非常缓慢。同步好后,会发现左边的External Libraries中已经存在这个包了。这个时候我们就可以在程序中使用包了,如下图:
当前只使用了一种导入包的用法,后续再更新其他方式的引入包方法。