【Go语言专栏】Go语言入门教程:从安装到第一个Hello World

简介: 【4月更文挑战第30天】本文介绍了Go语言的基础知识,包括其由Google开发、静态类型、编译型特点以及在服务器端编程等领域的应用。文章详细阐述了如何安装Go语言,包括在Windows、macOS和Linux上的步骤,并提供了验证安装的方法。接着,介绍了设置工作空间和配置环境变量的过程。最后,通过创建并运行一个"Hello, World!"程序,让读者初步体验Go语言的编程。文章还提供了进一步学习Go语言的资源,助力读者深入学习。

引言

Go语言,又称为Golang,是由Google开发的一种静态类型、编译型的编程语言。它以其简洁、高效、并发性能出色而闻名,被广泛应用于服务器端编程、云服务、微服务架构等领域。本篇文章将带你从零开始,一步步学习如何安装Go语言,并编写你的第一个Go程序——Hello World。

第一步:安装Go语言

1.1 下载Go语言

首先,访问Go语言的官方网站 https://golang.org/dl/ 下载适合你操作系统的Go安装包。

1.2 安装Go语言

对于不同的操作系统,安装步骤略有不同:

  • Windows: 运行下载的安装程序,按照提示完成安装。
  • macOS: 将下载的.pkg文件拖拽到“应用程序”文件夹中进行安装。
  • Linux: 可以使用包管理器安装,或者遵循官方网站提供的编译安装指南。

1.3 验证安装

打开终端或命令提示符,输入以下命令来验证Go是否安装成功:

go version

如果安装成功,你将看到输出的Go版本信息。

第二步:配置Go语言环境

2.1 设置工作空间

Go推荐使用工作空间(workspace)来组织项目。你需要设置三个环境变量:GOROOT, GOPATH, 和 GOBIN

  • GOROOT: Go语言的安装目录。
  • GOPATH: 你的工作空间目录,用于存放Go项目的源代码。
  • GOBIN: 编译后的二进制文件存放目录。

通常,你只需要设置GOPATH,Go会自动设置GOROOTGOBIN

2.2 配置环境变量

根据你的操作系统,配置环境变量的方法不同:

  • Windows: 在“系统属性”中的“环境变量”设置。
  • macOS/Linux: 在你的shell配置文件(如.bashrc.zshrc)中设置。

例如,在Linux系统中,你可以在你的.bashrc文件中添加:

export GOPATH=$HOME/go
export PATH=$PATH:/usr/local/go/bin:$GOPATH/bin

然后,运行source ~/.bashrc来使变更生效。

第三步:编写Hello World程序

3.1 创建新的Go文件

在你的工作空间的src目录下,创建一个新的Go文件。通常,我们会创建一个与包名相同的目录:

mkdir -p $GOPATH/src/hello
cd $GOPATH/src/hello

然后,创建一个名为main.go的文件:

touch main.go

3.2 编写代码

使用你喜欢的文本编辑器打开main.go文件,并输入以下代码:

package main

import "fmt"

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

这段代码定义了一个名为main的包,其中包含一个同样名为main的函数,这是程序的入口点。fmt.Println函数用于打印文本到终端。

3.3 运行程序

保存文件后,在终端中运行以下命令来编译并运行你的程序:

go run main.go

如果一切顺利,你将在终端看到输出:

Hello, World!

总结

通过本篇文章,你已经学会了如何安装Go语言,配置开发环境,并编写并运行一个简单的Hello World程序。Go语言以其简洁的语法和强大的功能,是学习编程和进行软件开发的不错选择。接下来,你可以开始探索Go语言的更多高级特性,如并发编程、网络编程等。

进一步学习

希望这篇文章能够帮助你顺利入门Go语言,开启你的编程之旅。如果你有任何问题或建议,欢迎在评论区留言交流。祝你学习愉快!

相关文章
|
1月前
|
算法 Java Go
【GoGin】(1)上手Go Gin 基于Go语言开发的Web框架,本文介绍了各种路由的配置信息;包含各场景下请求参数的基本传入接收
gin 框架中采用的路优酷是基于httprouter做的是一个高性能的 HTTP 请求路由器,适用于 Go 语言。它的设计目标是提供高效的路由匹配和低内存占用,特别适合需要高性能和简单路由的应用场景。
222 5
|
2月前
|
Linux Go iOS开发
Go语言100个实战案例-进阶与部署篇:使用Go打包生成可执行文件
本文详解Go语言打包与跨平台编译技巧,涵盖`go build`命令、多平台构建、二进制优化及资源嵌入(embed),助你将项目编译为无依赖的独立可执行文件,轻松实现高效分发与部署。
|
1月前
|
存储 安全 Java
【Golang】(4)Go里面的指针如何?函数与方法怎么不一样?带你了解Go不同于其他高级语言的语法
结构体可以存储一组不同类型的数据,是一种符合类型。Go抛弃了类与继承,同时也抛弃了构造方法,刻意弱化了面向对象的功能,Go并非是一个传统OOP的语言,但是Go依旧有着OOP的影子,通过结构体和方法也可以模拟出一个类。
160 1
|
3月前
|
Cloud Native Go API
Go:为云原生而生的高效语言
Go:为云原生而生的高效语言
363 0
|
3月前
|
Cloud Native Java Go
Go:为云原生而生的高效语言
Go:为云原生而生的高效语言
235 0
|
3月前
|
Cloud Native 安全 Java
Go:为云原生而生的高效语言
Go:为云原生而生的高效语言
287 1
|
9月前
|
编译器 Go
揭秘 Go 语言中空结构体的强大用法
Go 语言中的空结构体 `struct{}` 不包含任何字段,不占用内存空间。它在实际编程中有多种典型用法:1) 结合 map 实现集合(set)类型;2) 与 channel 搭配用于信号通知;3) 申请超大容量的 Slice 和 Array 以节省内存;4) 作为接口实现时明确表示不关注值。此外,需要注意的是,空结构体作为字段时可能会因内存对齐原因占用额外空间。建议将空结构体放在外层结构体的第一个字段以优化内存使用。
|
9月前
|
运维 监控 算法
监控局域网其他电脑:Go 语言迪杰斯特拉算法的高效应用
在信息化时代,监控局域网成为网络管理与安全防护的关键需求。本文探讨了迪杰斯特拉(Dijkstra)算法在监控局域网中的应用,通过计算最短路径优化数据传输和故障检测。文中提供了使用Go语言实现的代码例程,展示了如何高效地进行网络监控,确保局域网的稳定运行和数据安全。迪杰斯特拉算法能减少传输延迟和带宽消耗,及时发现并处理网络故障,适用于复杂网络环境下的管理和维护。
|
3月前
|
Cloud Native Java 中间件
Go:为云原生而生的高效语言
Go:为云原生而生的高效语言
213 0
|
3月前
|
Cloud Native Java Go
Go:为云原生而生的高效语言
Go:为云原生而生的高效语言
307 0