原创

Go 语言入门

温馨提示:
本文最后更新于 2024年07月30日,已超过 246 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我

Go 语言入门

Go 语言,也称为 Golang,是一种静态类型、编译型的编程语言,由 Google 开发,旨在为系统编程提供一种简洁、高效且安全的解决方案。

为什么选择 Go?

  • 易于学习: Go 的语法简洁明了,易于学习和理解。
  • 高效执行: Go 编译器能生成高性能的机器代码,并且具有垃圾回收机制。
  • 并发性: Go 内置了强大的并发模型,简化了多线程编程。
  • 丰富的标准库: Go 拥有丰富的标准库,提供了各种工具和功能。
  • 开源和社区支持: Go 是一门开源语言,拥有庞大的社区和丰富的资源。

安装 Go

访问 https://golang.org/ 下载适合你系统的 Go 安装包,并按照指示进行安装。

编写第一个 Go 程序

创建一个名为 hello.go 的文件,并写入以下代码:

```go package main

import "fmt"

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

解释:

  • package main:声明该文件属于 main 包,这是 Go 程序的入口点。
  • import "fmt":导入 fmt 包,该包提供了格式化输出的功能。
  • func main() {}:定义 main 函数,这是程序执行的起点。
  • fmt.Println("Hello, World!"):使用 fmt.Println 打印 "Hello, World!" 到控制台。

在终端中运行以下命令编译并运行程序:

bash go run hello.go

输出结果:

Hello, World!

基本语法

  • 变量声明: 使用 var 关键字声明变量,例如: go var name string = "Alice"
  • 数据类型: Go 拥有多种数据类型,例如:
    • 数字类型: intfloat64complex128
    • 字符串类型: string
    • 布尔类型: bool
  • 运算符: 包括算术运算符、比较运算符、逻辑运算符等。
  • 控制流: 包括 ifelseforswitch 等语句。
  • 函数: 使用 func 关键字定义函数,例如: go func add(a int, b int) int { return a + b }

并发编程

Go 内置了强大的并发模型,使用 goroutinechannel 实现并发编程:

  • goroutine: 轻量级线程,可以轻松创建多个 goroutine 并行执行。
  • channel: 用于 goroutine 之间安全通信的管道。

以下示例展示了两个 goroutine 通过 channel 通信:

```go package main

import ( "fmt" "time" )

func worker(id int, jobs <-chan int, results chan<- int) { for j := range jobs { fmt.Printf("worker %d: processing job %d\n", id, j) time.Sleep(time.Second) results <- j * 2 } }

func main() { jobs := make(chan int, 10) results := make(chan int, 10)

for i := 0; i < 3; i++ {
    go worker(i, jobs, results)
}

for j := 1; j <= 5; j++ {
    jobs <- j
}
close(jobs)

for j := 1; j <= 5; j++ {
    fmt.Println("result:", <-results)
}

} ```

学习资源

总结

Go 语言是一门功能强大、易于学习的编程语言,适合各种应用场景,包括系统编程、网络编程、Web 开发等。 通过学习 Go,您可以提升开发效率,构建更可靠、更高效的软件系统。

正文到此结束