发布于 2026-01-06 7 阅读
0

Golang 入门指南

Golang 入门指南

“Go 将成为未来的服务器端语言。”—— Tobias Lütke,Shopify

Go 语言最初是作为一项实验而创建的,其创建者的目标是创造一种能够解决其他语言的不良做法,同时保留其优点的语言。

Go 语言于 2012 年 3 月首次发布。Go 语言的设计理念是让用户感到熟悉并尽可能保持简单,整个语言规范仅用了几页纸就写完了。

这部剧讲的是什么?

本系列教程将以浅显易懂的方式介绍 Go 编程语言,涵盖 Go 的基本概念、语法和特性。教程的最后部分将重点讲解如何使用 Go 编程语言从零开始构建一个可运行的应用程序。

为什么要去?

为什么你会选择 Golang 而不是其他众多语言,例如 Python、Ruby、Node.js 等?

以下是我在 Go 语言中看到的一些优点:

  • 并发是该语言固有的特性。因此,编写多线程程序轻而易举。这是通过 Goroutine 和通道实现的(将在本系列的后续部分中详细讨论)。

  • Golang 是一种编译型语言。它的源代码会被编译成本地二进制文件。而解释型语言(例如 Node.js 中使用的 JavaScript)则不具备这一特性。

  • 语言规范非常简单。整个规范只需一页纸就能写完,你甚至可以用它来创建自己的编译器……是不是很棒?

安装与设置

Golang 支持 Mac、Windows 和 Linux 三大平台。您可以点击此处下载相应平台的二进制文件 - https://golang.org/dl

Linux 设置

下载压缩包并将其解压到/usr/local,在 中创建一个 Go 树/usr/local/go

tar -C /usr/local -xzf go$VERSION.$OS-$ARCH.tar.gz
Enter fullscreen mode Exit fullscreen mode

将其添加/usr/local/go/binPATH环境变量中。您可以通过将此行添加到 /etc/profile 文件(用于系统范围的安装)或$HOME/.profile

export PATH=$PATH:/usr/local/go/bin
Enter fullscreen mode Exit fullscreen mode

Mac OS X 软件包安装程序

下载软件包文件,打开它,然后按照提示安装 Go 工具。该软件包会将 Go 发行版安装到指定位置/usr/local/go

该软件包会将 /usr/local/go/bin 目录添加到您的 PATH 环境变量中。您可能需要重启所有打开的终端会话才能使更改生效。

Windows 安装

打开MSI 文件并按照提示安装 Go 工具。默认情况下,安装程序会将 Go 发行版安装在 c:\Go 目录下。

安装程序应该会将文件添加c:\Go\bin directory到您的PATH环境变量中。您可能需要重启所有打开的命令提示符窗口才能使更改生效。

测试我们的安装

为了测试 Go 是否已正确安装在我们的机器上,我们需要创建一个工作区,并编写我们的第一个程序。

我们首先创建工作区:

cd $HOME/go && mkdir test
Enter fullscreen mode Exit fullscreen mode

接下来,我们创建源文件,test.go内容如下:


package main 

import "fmt"

func main() {

  fmt.Println("Hello World!")
}
Enter fullscreen mode Exit fullscreen mode

上面的代码是一个简单的 Go 程序。每个 Go 程序都由多个包组成。我们的程序从 main 包开始运行。该程序使用了导入路径为“fmt”的包。

按照惯例,包名与导入路径的最后一个元素相同。例如,该fmt包包含以语句 package 开头的文件fmt

Go 提供了一个构建工具供我们使用,用于构建程序:

cd $HOME/go/test

go build test.go
Enter fullscreen mode Exit fullscreen mode

上述命令将在源代码所在的目录中生成一个名为 test 的可执行文件。执行该文件即可看到欢迎信息:

./test
Hello World!
Enter fullscreen mode Exit fullscreen mode

如果看到欢迎信息,说明你目前为止一切顺利,Go 安装正常。

这是 Golang 教程系列的第一篇文章。在接下来的文章中,我将介绍以下主题:

  • 变量 -视图
  • 类型 -查看
  • 常量 -查看
  • 功能 -查看
  • 包裹
  • 条件语句和循环
  • 数组、切片和可变参数函数
  • 指针、结构体和方法
  • 接口
  • 并发性
  • 面向对象编程
  • 延迟和错误处理

希望您喜欢本系列文章的这一部分?您可以在我的博客The Practical Dev上阅读我的其他文章。

如果我遗漏了什么,请在评论区告诉我。

文章来源:https://dev.to/codehakase/golang---getting-started-16c