教程:Go入门

在本教程中,将获得Go 编程的简要介绍 。在此过程中,你将:

  • 安装 Go(如果你还没有的话)。
  • 编写一些简单的“Hello, world”代码。
  • 使用 go 命令运行您的代码。
  • 使用 Go 包发现工具查找可以在您自己的代码中使用的包。
  • 调用外部模块的函数。

注意:有关其他教程,请参考教程

先决条件

  • 有一定的编程经验。这里的代码非常简单,但它有助于了解一些函数。
  • 一种编辑代码的工具。您拥有的任何文本编辑器都可以正常工作。大多数文本编辑器都对 Go 有很好的支持。最受欢迎的是 VSCode(免费)、GoLand(付费)和 Vim(免费)。
  • 一个命令终端。Go 适用于 Linux 和 Mac 上的任何终端,以及 Windows 中的 PowerShell 或 cmd。

安装 Go

只需使用下载和安装步骤。

写代码

Hello, World 入门。

  1. 打开命令提示符并 cd 到主目录。在 Linux 或 Mac 上:
     cd
    

    在 Windows 上:

     cd %HOMEPATH%
    
  2. 为第一个 Go 源代码创建一个 hello 目录。
    例如使用以下命令:

     mkdir hello
     cd hello
    
  3. 启用代码依赖项跟踪。当代码导入包含在其他模块中的包时,可以通过代码自己的模块管理这些依赖项。该模块由 go.mod 文件定义,该文件跟踪提供这些包的模块。该 go.mod 文件保留在你的代码中,包括在源代码存储库中。要通过创建 go.mod 文件来为代码启用依赖关系跟踪,请运行 go mod init命令,并带上代码所在模块的名称作为参数。该名称是模块的路径。在大多数情况下,这将是保存源代码的存储库位置,例如 github.com/mymodule. 如果你打算发布你的模块供其他人使用,则模块路径必须是 Go 工具可以从中下载您的模块的位置。就本教程而言,只需使用 example.com/hello.
    $ go mod init example.com/hello
    go: creating new go.mod: module example.com/hello
  1. 在文本编辑器中,创建一个 hello.go文件,在里面编写你的代码。
  2. 将以下代码粘贴到 hello.go 文件中并保存该文件。
package main

import "fmt"

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

这是你的 Go 代码。在此代码中:

  • 声明一个main包(包是对功能进行分组的一种方式,它由同一目录中的所有文件组成)。
  • 导入流行的 fmt包,其中包含格式化文本的功能,包括打印到控制台。这个包是你安装 Go 时得到的标准库包之一 。
  • 实现一个main函数将消息打印到控制台。当您运行main包时,main函数默认情况下会被执行。
  1. 运行代码以查看问候语输出。
     $ go run .
     Hello, World!
    

    该 go run命令 是用来在 Go 中完成事情的众多命令之一。使用以下命令获取其他命令的清单:

     $ go help
    

调用外部包中的代码

当你需要你的代码实现的某些功能可能已由其他人实现时,你可以寻找那些可以用在你代码中的包。

1. 使用来自外部模块的函数使你的打印消息更有趣。

    1. 访问 pkg.go.dev 并 [搜索“quote”包](https://pkg.go.dev/search?q=quote)。 

    2. 在搜索结果中, 找到rsc.io/quote并单击该包(如果看到rsc.io/quote/v3,请暂时忽略它)。

    3. 在文档部分的索引下,注意可以从代码调用的函数列表。将使用该 Go 功能。

    4. 在此页面的顶部,请注意模块中quote包含包rsc.io/quote。

  可以使用 pkg.go.dev 站点查找已发布的模块,这些模块的包具有你可以在自己的代码中使用的功能。在模块发布的包中——比如rsc.io/quote——其他人都可以使用它们。随着时间的推移,新版本会改进模块,可以升级代码以使用改进的版本。
  1. 在 Go 代码中,导入rsc.io/quote包并添加对其Go函数的调用。添加突出显示的行后,您的代码应包括以下内容:
        package main

        import "fmt"

        import "rsc.io/quote"

        func main() {
            fmt.Println(quote.Go())
        }
  1. 添加新的模块要求与总和。Go 将添加quote模块作为需要,以及用于验证模块的 go.sum 文件。有关更多信息,请参阅 Go Modules Reference 中的Authenticating modules
    $ go mod tidy
    go: finding module for package rsc.io/quote
    go: found rsc.io/quote in rsc.io/quote v1.5.2
  1. 运行代码以查看正在调用的函数生成的消息。
     $ go run .
     Don't communicate by sharing memory, share memory by communicating.
    

    注意,你的代码调用该Go函数,来打印出有关通信的清晰信息。

    当运行go mod tidy 时,它会找到并下载包含你导入的包的 rsc.io/quote模块。默认情况下,它下载了最新版本——v1.5.2。

编写更多代码

通过这个快速介绍,您安装了 Go 并学习了一些基础知识。要使用另一个教程编写更多代码,请查看 创建 Go 模块

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: 教程:Go入门

  • Trackback 关闭
  • 评论 (2)
    • manongxiaowen
    • 2021/08/17 4:34下午

    感谢博主的分享,博主的文采很好,希望博主也能出一款最近很火的国产接口工具apipost的使用教程,谢谢博主。

return top