织梦网站版本,电商网站购物流程,云南人事考试网官网,wordpress主机空间选择为什么要学习Go 从今天起#xff0c;我们将一同启程探索 Go 语言的奥秘。我会用简单明了的方式#xff0c;逐一讲解 Go 语言的各个知识点#xff0c;帮助你从基础做起#xff0c;一步步深化理解。不论你之前是否有过 Go 语言的接触经验#xff0c;这个系列文章都将助你收获… 为什么要学习Go 从今天起我们将一同启程探索 Go 语言的奥秘。我会用简单明了的方式逐一讲解 Go 语言的各个知识点帮助你从基础做起一步步深化理解。不论你之前是否有过 Go 语言的接触经验这个系列文章都将助你收获满满。 现在让我以一个经典的例子“Hello World”来带你入门 Go 语言了解它是如何运行起来的。 开始学习
Hello, 世界 若你曾学习过 C 语言那么对下面这个经典示例应该颇为熟悉。借助这个例子我将首先为你简要介绍 Go 语言的一些关键概念帮助你初步把握 Go 语言代码的结构和风貌。以下是示例代码
package mainimport fmtfunc main() {fmt.Println(Hello, World!)}这五行的代码组合便形成了一个完整的 Go 程序你会发现它非常易于理解。接下来我将执行这段代码让我们观察一下运行后的输出。操作步骤是打开命令行终端输入以下指令并按下回车键。
$ go run main.goHello, World!当我输入命令 go run main.go 并按下回车键后屏幕上显示的“Hello, World!”便是我们的 Go 程序运行后的输出结果。 在这里go 是 Go 语言附带的工具链中的一个命令它与您可能熟悉的如 ls 这样的命令行工具一样是一个可执行程序。go 命令提供了多种功能包括运行、编译 Go 代码以及生成可执行文件等。 run 是 go 命令下的一个选项它用于指示工具链执行指定的 Go 程序。而 main.go 则是我编写的 Go 代码文件。因此整个命令 go run main.go 的含义是使用 Go 工具链来运行 main.go 文件中的代码。
程序结构分析 为了让一个 Go 语言程序顺利执行关键在于包含 package main 和 main 函数这两个要素。package main 指示这是一个可执行的应用程序而 main 函数则是程序启动的入口点。 在“Hello, 世界”这个基础示例中我们见证了 Go 语言程序的基本骨架。以下是对程序结构的逐步解析以及 Go 语言核心概念的介绍。 首行的 package main 声明了当前文件 ch01/main.go 所属的包。在 Go 语言中package 是声明包的关键字而 main 是包的名称。main 包在 Go 语言中具有特殊意义它表明你的项目是一个独立的可执行程序而不是供其他项目引用的库。 第二行的 import fmt 是引入 fmt 包的声明。import 是 Go 语言的关键字用于导入所需的包。这里我们导入了 fmt 包以便在后续代码中使用它提供的功能。 第三行的 func main() 定义了 main 函数。func 是 Go 语言中声明函数的关键字main 是函数名而空括号 () 表示该函数不接受任何参数。在 Go 语言中main 函数是程序的入口点程序启动时首先执行的就是 main 函数通过它来调用其他函数以实现业务逻辑。 第四行的 fmt.Println(Hello, 世界) 是调用 fmt 包中的 Println 函数来输出文本“Hello, 世界”。要使用一个包的功能必须先将其导入。Println 函数是 fmt 包提供的一个函数用于在控制台上打印信息。 最后一行的大括号 } 标志着 main 函数体的结束。至此我们完成了对这段代码的分析执行程序后便能看到“Hello, 世界”的输出。 通过上述分析我们可以看出 Go 语言的代码结构简洁而完整仅凭 package、import 和 func main 这些基本概念就能构建一个可运行的程序。 在后续我们将进一步探讨如何使用变量、自定义函数等内容。在此之前我们先来了解 Go 语言的开发环境如何搭建这是运行上述 Go 代码并让程序运行起来的前提。
Go 语言环境搭建 要搭建 Go 语言的开发环境首先需要下载 Go 语言的安装包。你可以访问 Go 官方网站 https://golang.org/dl/ 或者国内的镜像网站 https://golang.google.cn/dl/ 来下载由于网络原因如果无法访问国外官网可以选择国内的镜像网站进行下载。
在下载页面根据你所使用的操作系统无论是 Windows、macOS 还是 Linux选择合适的安装包。以下是下载步骤的简要说明
访问 Go 语言官方网站或国内镜像网站。在下载页面中找到适合你操作系统的 Go 版本。点击相应的下载链接下载 Go 安装包。 Windows MSI 下安装 在 Windows 系统中MSI 安装包是一个便捷的选择因为它提供了一个直观的安装界面让用户能够轻松地配置 Go 语言开发环境。对于大多数现代的 Windows 操作系统它们都是 64 位的因此你应该下载 go1.20.windows-amd64.msi。如果你使用的是 32 位的 Windows 系统那么你应该选择 go1.15.windows-386.msi。 下载并双击安装包后你会被引导通过一系列的安装步骤。在安装过程中你可以选择将 Go 安装到默认的 C:\Go 目录或者根据自己的喜好选择一个不同的目录。 一旦你选择安装到 C:\Go 目录安装程序会自动将 C:\Go\bin 目录添加到你的系统 PATH 环境变量中。这样你就可以在任何命令提示符中直接运行 Go 命令了。如果你发现安装程序没有添加这个路径你也可以手动将其添加到 PATH 环境变量。
手动添加步骤如下
打开“控制面板”。选择“系统和安全”。点击“系统”。在系统属性窗口中选择“高级”选项卡。点击“环境变量”按钮。在环境变量窗口中找到并选择“Path”变量然后点击“编辑”。在编辑环境变量窗口中点击“新建”然后输入 C:\Go\bin。点击“确定”保存更改。退出所有打开的命令行窗口然后打开一个新的命令行窗口以使更改生效。
Linux 下安装
如果要安装1.18以下的版本可以直接
sudo apt-get install golang-goyum install golang-go
第一行为Ubuntu的下载第二行为Redhat的下载方式。
如果要通过安装包安装的话由于Linux 系统有 32 位和 64 位你可以根据你的 Linux 操作系统选择相应的压缩包它们分别是 go1.20.linux-386.tar.gz 和 go1.20.linux-amd64.tar.gz。
下载成功后需要先进行解压假设你下载的是 go1.20.linux-amd64.tar.gz在终端通过如下命令即可解压
sudo tar -C /usr/local -xzf go1.20.linux-amd64.tar.gz然后把 /usr/local/go/bin 添加到 PATH 环境变量中就可以使用 Go 语言开发工具包了。
把下面这段添加到 /etc/profile 或者 $HOME/.profile 文件中保存后退出即可成功添加环境变量。
export PATH$PATH:/usr/local/go/binmacOS 下安装 如果你的操作系统是 macOS可以采用 PKG 安装包。下载 go1.20.darwin-amd64.pkg 后双击按照提示安装即可。安装成功后路径 /usr/local/go/bin 应该已经被添加到了 PATH 环境变量中如果没有的话你可以手动添加和上面 Linux 的方式一样把如下内容添加到 /etc/profile 或者 $HOME/.profile 文件保存即可。
export PATH$PATH:/usr/local/go/bin安装测试 安装成功后可以打开终端或者命令提示符输入 go version 来验证 Go 语言是否安装成功。如果成功的话会打印出 Go 语言的版本和系统信息如下所示
$ go versiongo version go1.20 darwin/amd64环境变量设置 在安装了 Go 语言开发工具包之后虽然你已经拥有了编译和运行 Go 程序的基本能力但还有一些重要的环境变量需要设置以确保 Go 开发环境完整。这两个关键的环境变量是 GOPATH 和 GOBIN。
GOPATH这是 Go 项目的工作目录它在 Go Module 之前是非常重要的现在主要用于存放使用 go get 命令获取的项目。GOBIN这是 Go 编译生成的程序的安装目录。当你使用 go install 命令时编译后的 Go 程序会被安装到 GOBIN 目录中这样你就可以在命令行中直接使用这些程序。
假设你的工作目录是 /Users/ubuntu/go你需要将 GOPATH 环境变量设置为 /Users/ubuntu/go并将 GOBIN 环境变量设置为 $GOPATH/bin。
在 Linux 和 macOS 系统下你可以将以下内容添加到 /etc/profile 或者你的用户目录下的 .profile 文件中以设置这些环境变量
export GOPATH/Users/ubuntu/go
export GOBIN$GOPATH/bin
export PATH$PATH:$GOBIN如果在 Windows 系统中可以通过控制面板 - 高级 - 环境变量选项添加这两个环境变量。
项目结构 在 Go 语言的现代项目中Go Module 是一个推荐的管理依赖和构建项目的工具。它允许你在项目的任何位置创建一个 Go 语言项目而不需要依赖于全局的 GOPATH 环境变量。
假设你的项目位置是 /Users/ubuntu/goProject/打开终端输入如下命令切换到该目录下
$ cd /Users/ubuntu/goProject/
可以执行如下命令创建一个 Go Module 项目 会生成一个go.mod文件
$ go mod init然后在当前目录下创建一个 main.go 文件这样整个项目目录结构是
goProject├── go.mod├── lib└── main.go其中 main.go 是整个项目的入口文件里面有 main 函数。lib 目录是项目的子模块根据项目需求可以新建很多个目录作为子模块也可以继续嵌套为子模块的子模块。
编译发布 完成了你的 Go 项目后你可以选择将代码编译成一个可执行文件以便在终端中直接运行或者将其发布到 $GOBIN 目录以便在系统环境中直接使用。
$ go build main.go回车执行后会在当前目录生成 main 可执行文件现在我们来测试下它是否可用。
$ ./main Hello, World!如果成功打印出“Hello, World!”证明程序成功生成。
把它安装到 $GOBIN 目录或者任意位置
$ go install main.go跨平台编译
在 Go 语言开发工具包中一个令人印象深刻的功能就是它的跨平台编译能力。这意味着你可以在一个操作系统上开发代码然后编译出可以在其他操作系统上运行的可执行程序。例如如果你在 macOS 上开发你可以编译出能在 Linux 或 Windows 上运行的程序。
跨平台编译允许你选择你最喜欢的操作系统作为开发环境然后轻松地将代码编译成适合发布平台的可执行程序。
Go 语言通过两个环境变量来控制跨平台编译
GOOS代表要编译的目标操作系统。常见的值有 linux、windows、darwin 等。GOARCH代表要编译的目标处理器架构。常见的值有 386、amd64、arm64 等。
通过组合不同的 GOOS 和 GOARCH 值你可以编译出适用于不同平台的可执行程序。例如如果你在 macOS 上开发且你的系统是 AMD64 架构你可以这样编译出一个适用于 Linux AMD64 架构的可执行程序
$ GOOSlinux GOARCHamd64 go build main.go在这个命令中
GOOSlinux告诉 Go 编译器目标操作系统是 Linux。GOARCHamd64告诉 Go 编译器目标处理器架构是 AMD64。go build -o linux-amd64-hello-world .编译当前目录下的 Go 源文件并将输出命名为 linux-amd64-hello-world。
完成编译后你将得到一个名为 linux-amd64-hello-world 的可执行文件它可以在 Linux AMD64 架构的系统上运行。这样你就可以选择在 macOS 上开发然后编译出适用于其他平台的可执行程序以便在不同环境中运行你的 Go 程序。
Go 编辑器推荐 在软件开发领域选择一款合适的编辑器对于提高工作效率至关重要。今天我想向大家推荐两款备受开发者喜爱的编辑器它们分别是 Visual Studio Code 和 JetBrains 的 Goland。 Visual Studio Code 这款编辑器是一款由微软开发的免费开源代码编辑器拥有丰富的插件和扩展功能。对于 Go 语言开发Visual Studio Code 提供了专门的 Go 扩展插件它可以帮助你更高效地编写、调试和测试 Go 代码。你可以在 Visual Studio Code 的官方网站 Visual Studio Code - Code Editing. Redefined 下载这款编辑器并安装 Go 扩展插件来开始你的 Go 开发之旅。 Goland是一款由老牌 IDE 厂商 JetBrains 推出的 Go 语言集成开发环境。它不仅集成了所有必要的 Go 插件还提供了一系列强大的功能如代码补全、代码格式化、代码重构、代码导航等。Goland 适合所有水平的开发者无论是初学者还是经验丰富的老手都能在 Goland 中找到适合自己的开发体验。你可以在 Goland 的官方网站 GoLand by JetBrains: More than just a Go IDE 下载并安装 Goland开始使用这款功能强大的 Go 开发工具。 选择哪款编辑器取决于你的个人偏好和需求。如果你喜欢轻量级的编辑器并且需要丰富的插件支持Visual Studio Code 是一个不错的选择。而如果你更倾向于使用集成度更高、功能更全面的 IDEGoland 可能会更符合你的需求。无论你选择哪款编辑器它们都能帮助你更高效地开发 Go 语言应用程序。