Go :从零开始构建你的第一个应用
Go,通常被称为 Golang,是由 Google 开发的一种开源编程语言。它以其简洁的语法、高效的性能和强大的并发支持而闻名,非常适合构建网络服务、云原生应用和命令行工具。本篇文章将引导你完成 Go 环境的搭建,并编写你的第一个 Go 程序。32lpj.aijiu520.com
Go 语言简介与环境搭建yo3jq.aijiu520.com
在开始编写代码之前,你需要在你的计算机上安装 Go。Go 支持所有主流操作系统(Windows、macOS、Linux)。你可以访问官方下载页面 golang.org/dl/,根据你的操作系统选择合适的安装包进行下载和安装。安装过程非常直接,按照向导完成即可。安装完成后,打开你的终端或命令行工具,运行以下命令来验证安装是否成功。04f5c.aijiu520.com
go version
你的第一个 Go 程序:"Hello, World!"xm3t6.hsd-stone.com
现在,让我们来编写一个经典的 "Hello, World!" 程序。在你的工作目录下,创建一个名为 hello.go 的文件。Go 语言的源文件以 .go 作为扩展名。每个可执行的 Go 程序都必须包含一个 main 包和一个 main 函数,它们是程序的入口点。我们将使用 fmt 包来实现格式化的输入输出。1aa5k.hsd-stone.com
package main
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
变量与基本类型ww7j7.hsd-stone.com
任何编程语言都离不开变量。Go 是一门静态类型语言,这意味着你需要在声明变量时指定其类型,或者让编译器根据初始值自动推断。Go 提供了多种基本数据类型,包括整型(int)、浮点型(float64)、字符串(string)和布尔型(bool)等。你可以使用 var 关键字或简短声明 := 来创建变量。31szl.hsd-stone.com
package main
import "fmt"
func main() {
// 使用 var 关键字声明变量
var language string = "Go"
var version float64 = 1.22
// 使用简短声明 (类型推断)
year := 2009
isCompiled := true
fmt.Printf("语言: %s, 版本: %f\n", language, version)
fmt.Printf("诞生年份: %d, 是编译型语言: %t\n", year, isCompiled)
}
定义与调用函数bwajx.hsd-stone.com
函数是构建 Go 程序的基本代码块,用于封装可重复执行的逻辑。定义一个函数需要使用 func 关键字,后面跟着函数名、参数列表(如果有)和返回值列表(如果有)。这种明确的定义方式让代码的可读性非常高。下面我们定义一个简单的加法函数。ewk3n.hsd-stone.com
package main
import "fmt"
// 定义一个名为 add 的函数,它接受两个 int 类型参数,并返回一个 int 类型的结果
func add(a int, b int) int {
return a + b
}
func main() {
sum := add(10, 25)
fmt.Println("10 + 25 的结果是:", sum)
}
Go 的动态数组:切片i26zn.hsd-stone.com
在 Go 中,数组是固定长度的,这在很多场景下不够灵活。因此,Go 提供了切片这一更强大、更常用的数据结构。切片是对数组的一个连续片段的引用,它提供了动态大小的窗口。你可以使用内置的 make 函数来创建一个切片,并使用 append 函数向其末尾添加元素。j607t.hsd-stone.com
package main
import "fmt"
func main() {
// 使用 make 创建一个初始长度为 0 的整型切片
var numbers []int
// 使用 append 函数向切片中添加元素
numbers = append(numbers, 1)
numbers = append(numbers, 2, 3, 4)
fmt.Println("切片内容:", numbers)
// 使用 for...range 循环来遍历切片
fmt.Println("遍历切片:")
for index, value := range numbers {
fmt.Printf("索引: %d, 值: %d\n", index, value)
}
}
恭喜!你已经完成了 Go 语言的基础入门,并成功运行了几个小程序。接下来,你可以探索 Go 更强大的特性,比如它的并发模型 Goroutines 和 Channels。p62s7.hsd-stone.com


汤臣倍健公司氛围 390人发布