# golang编程环境搭建

Go（也称 Golang）是由 Google 开发的一门编程语言，于2009年首次公开发布。它是一门静态类型、编译型语言，具有内存安全、垃圾回收、并发支持和高效的编译等特性，因此被广泛用于构建高性能、高并发、可靠性强的后端服务。

以下是 Go 语言的一些特点和优势：

1. 简单易学：Go 语言语法简单明了，代码结构清晰，易于阅读和维护，学习曲线平缓，非常适合初学者学习。
2. 高效性：Go 语言采用静态编译，编译速度非常快，并且生成的二进制文件也非常小，运行速度快。
3. 内存安全：Go 语言自带垃圾回收机制，有效地避免了内存泄漏和空指针等问题，增强了程序的稳定性和可靠性。
4. 并发支持：Go 语言原生支持协程和通道，使得编写并发程序变得非常简单，而且并发程序的性能也非常高。
5. 开发效率高：Go 语言提供了一些很好的标准库和工具，可以帮助开发人员快速地实现常见的任务和功能，大大提高了开发效率。跨平台支持：Go 语言的编译器支持多种操作系统和硬件架构，可以在各种平台上编译和运行程序。

目前，Go 语言已经广泛应用于云计算、大数据、网络编程、分布式系统、微服务等领域，成为一个非常流行的编程语言。

## 软件包

### golang

```Shell
sudo apt install golang
```

你可以通过以下命令验证是否安装成功：

```Shell
go version
```

如果你看到了类似下面的输出，说明你已经成功安装了golang：

```Shell
go version go1.13.4 linux/amd64
```

### goland

goland是一款非常强大的golang开发工，由jetbrains公司开发，支持golang的语法高亮、代码提示、代码补全、代码重构、代码格式化、代码调试等功能。
不过它是一个收费软件

如果你需要安装它的话，请到官网下载安装包进行安装。[https://www.jetbrains.com/go/](https://www.jetbrains.com/go/)

### vscode

是的vscode也可以用来开发golang，它的安装和使用非常简单，你只需要安装一个插件就可以了。
在vscode中的插件市场中搜索golang，然后安装即可，这是一个聚合包，会自动下载其他的插件。

## 资源指南

### 官方文档

Go 语言官方网站提供了非常详细的文档，包括语言规范、标准库、工具等。对于学习 Go 语言来说，官方文档是一个非常好的起点。
[https://golang.org/doc/](https://golang.org/doc/)

### 书籍

1. Go 语言设计与实现
    《Go 语言设计与实现》是一本权威的 Go 语言权威指南，由 Go 语言的创始人之一 Rob Pike 和两位 Google 工程师写就。这本书详细介绍了 Go 语言的设计思想、语法、并发编程等方面，对于深入学习 Go 语言非常有帮助。
    链接：https://book.douban.com/subject/27044219/

2. Go in Action
    《Go in Action》是一本非常流行的 Go 语言实战指南，适合有一定编程经验的读者阅读。这本书涵盖了 Go 语言的各个方面，包括语法、并发编程、网络编程等，让读者通过实践深入了解 Go 语言。
    链接：https://book.douban.com/subject/27015617/
3. Go 语言编程
    《Go 语言编程》是一本面向初学者的入门指南，通过大量的代码示例和实践讲解了 Go 语言的语法、数据类型、函数、并发编程等方面。对于初学者来说，这是一本非常不错的入门书籍。
    链接：https://book.douban.com/subject/35071480/

### 网站

Go by Example
Go by Example 是一个交互式的网站，提供了许多用 Go 语言实现的示例程序，从基本语法到并发编程都有涉及。通过实践这些示例，可以加深对 Go 语言的理解。

链接：https://gobyexample.com/
