Hello World
Q7nl1s admin

Hello World

设置开发环境

我们需要创建一个目录来编写我们的hello world代码。打开终端运行以下命令。

1
mkdir E:\backend\Go_backend\learngo\

这样我的E:\backend\Go_backend\目录下就会创建一个名为learngo的文件夹。

创建一个Go模块

Go模块用于跟踪我们应用程序的依赖项及其版本,下一步是在文件夹E:\backend\Go_backend\learngo\中创建一个命名为learngo的go模块

E:\backend\Go_backend\learngo\中运行命令go mod init learngo,这将会创建一个名为go.mod的文件,该文件的内容如下:

1
2
3
module learngo

go 1.19

第一行module learngo指定模块名称。下一行go 1.19表示此模块中的文件使用 go version 1.19

当我们了解包时,我们将更详细地讨论Go模块。

Hello World

我们可以用自己喜欢的编辑器在E:\backend\Go_backend\learngo\文件夹中创建一个名为main.go的文件,内容如下:

1
2
3
4
5
6
7
package main

import "fmt"

func main(){
fmt.Println("Hello World")
}

将包含main函数的文件命名为main.go是 Go 中的约定俗成的,但其他名称也可以。

运行一个go程序

我们有四种方法来运行一个go程序

1.go insatall

第一种方法就是使用go install命令。

让我们进入刚刚创建的learngo文件夹,接下来运行以下命令

1
go install

上面的命令将编译程序并将二进制文件安装(复制)到~/go/bin位置。二进制文件的名称将是go模块的名称。在我们的例子中,它将被命名为learngo

现在让我们运行编译后的二进制文件。

1
~/go/bin/learngo

上面的命令将运行learngo二进制文件并打印以下输出。

1
Hello World

我们第一个Go程序就这样完成了。

如果你想避免每次运行程序时都输入整个路径,你可以添加~/go/bin到你子集的PATH中。

1
export PATH=$PATH:~/go/bin  

现在你只需要在终端中输入learngo即可运行该程序。

2.go build

我个人最推荐这一种方法,可以避免太多的外存空间被占用。

第二种方法时使用go build。它与go install非常相似,只是它不将编译后的二进制文件安装(复制)到路径~/go/bin中去,而是在go build安装位置内创建二进制文件。

在终端中输入以下命令

1
cd E:\backend\Go_backend\learngo\  

将当前目录更改为learngo.

之后,输入以下命令。

1
go build  

learngo上面的命令将在当前目录中创建一个名为的二进制文件。ls -al将显示创建了一个名为的文件learngo

键入./learngo以运行程序。这也将打印

1
Hello World  

3.go run

第三种方式是使用go run命令。

在终端中键入命令cd E:\backend\Go_backend\learngo\以将当前目录更改为learngo

之后,输入以下命令。

1
go run main.go  

输入上述命令后,我们可以看到输出

1
Hello World  

go rungo build/go install命令之间的一个细微差别是,go run需要.go文件名作为参数。

在hood下,go run工作原理与go build类似. 但它不是将程序编译并安装到当前目录,而是将文件编译到临时位置并从该位置运行文件

4.Go Playground

运行程序的最后一种方式是使用 go playground。虽然这有限制,但当我们想要运行简单的程序时,这种方法会派上用场,因为它使用浏览器并且不需要在本地安装 Go :)。Go团队为 hello world 程序创建了一个Playground。点击这里在线运行程序。

我们还可以使用 go playground 与他人共享您的源代码。

既然我们知道了运行程序的 4 种不同方法,您可能会在决定使用哪种方法时感到困惑。答案是,这取决于当我想快速检查逻辑或了解标准库函数的工作原理时,我通常会使用Playground。在大多数其他情况下(内存空间足够),我更喜欢go install,因为它让我可以选择从终端中的任何目录运行程序,因为它将所有程序编译到标准~/go/bin/路径。

hello world程序简要说明

回看我们刚刚编写的hello world程序

1
2
3
4
5
6
7
package main

import "fmt"

func main(){
fmt.Println("Hello World")
}

我们详细讨论它的各个部分

package main - 每个go文件都必须以package name语句开头。包用于提供代码划分和可重用性。此处用包名main。主要功能始终驻留在主包中。

import “fmt” - import 语句用于导入其他包。在我们的例子中,fmt包被导入,它将在 main 函数中用于将文本打印到标准输出。

func main() -func关键字标记函数的开始。这main是一个特殊的功能。程序执行从main函数开始。{和大}括号表示主函数的开始和结束。

fmt.Println(“Hello World”) - 该包的Println功能fmt用于将文本写入标准输出。package.Function()是调用包中函数的语法。

 Comments
Comment plugin failed to load
Loading comment plugin
Powered by Hexo & Theme Keep
Unique Visitor Page View