最适合网络开发者的网站
Java 编程语言。hyperskill 为初学者提供的课程

尿素

Go 简介(Golang)


理论

计算机科学的一个主要工具是编程语言。我们使用它们来开发计算机程序。在现代世界中,有各种各样的编程语言,每种语言都有自己的粉丝社区。让我们来看看 Go 的独特之处以及这种语言的优点。


§1. Go编程语言?

Golang 简介。欢迎来到 Go

如果你好奇的话,这里有一个非常简短的历史记录:

2007年, 谷歌 开始将 Go 编程语言作为内部项目进行开发。两位 Unix 杰出人物 Rob Pike 和 Ken Thompson 设计了最初的版本。两年后,即 2009 年 11 月 10 日,该软件以自由开源许可证发布。准备投入生产的 Go 1.0 版本于 2012 年 3 月发布。Google 的设计团队与 Russ Cox、Andrew Gerrand、Ian Lance Taylor 等人一起参与了 Go 项目。感谢所有这些人,您有机会学习这种编程语言。

Golang 历史

Go 也被称为 Golang,与 Go 编程语言同名;“Golang”这个名字的出现是因为网站(去开发) 最初是 golang.org。我们将在本主题中交替使用这两个名称。


§2. Go 的优势

Go 的语法很简洁,下表是 Go 和 Java 在声明和初始化变量时的语法对比。

软件包 main

函数main(){
a, b, c := 1, 2, 3 // a, b, c 具有 'int' 类型
}

Java

公共类主要{
公共静态void main(String [] args){
int a = 1,b = 2,c = 3;
   }
}

Go 是一种实用语言:其主要目的是解决现实世界的问题。您可以在以下示例中看到这一点:

  • Go 的初衷是用于以服务器为中心的 Web 服务器和存储架构领域。因此,我们决定将 Go 打造成一种编译为本机代码的编程语言。Go 程序通常执行速度非常快,内存占用低。这就是为什么您可以将这种语言用作系统编程语言。
  • Golang 擅长处理大量并发并简化事件处理。这使其成为游戏服务器和 IoT 解决方案的理想选择。另一个有用的链接是 Github wiki,可帮助您了解 Go 中的成功示例。
  • 最后,你可以将 Go 用作通用编程语言。它是开发和解决文本处理问题的绝佳工具。

稍作休息,看看围棋吉祥物在不同角色中是如何发挥作用的。

Go 是一种实用的语言

该语言支持一系列编程范式,包括命令式编程、面向对象编程、过程式编程和函数式编程。Go FAQ 包含 Go 团队对这些设计的解释。


§3. Go 的缺点

虽然 Go 与其他编程语言相比有很多优点,但在学习它时你应该注意它仍然有一些缺点:

  • Go 的标准库与其他语言相比缺少一些功能。例如,没有内置函数来查找数字数组中的最大数字,因此您必须手动实现它。
  • Go的标准库默认不支持GUI编程,这是其他编程语言库(例如Java标准库)的优势。
  • Go 的独立二进制文件很大,因为它们需要嵌入式垃圾收集器和整个 Go 运行时。“Hello World”程序可能占用 2MB 的文件大小。

地鼠只是简单的生物。

地鼠只是简单的生物

§4. 第一个围棋示例

现在您已经熟悉了 Go 语言,您可以按照以下步骤在您的计算机上安装 Go。

安装完 Go 后,我们可以看一下第一个代码示例。它将“Hello Golang”字符串打印到终端(假设此示例包含在 main.go 文件中):

Go 示例

软件包 main

导入“fmt”

函数main(){
fmt.Println("Hello Golang") // 将“Hello Golang”打印到屏幕上
}

在 Go 中写注释时,我们使用 C++ 风格: // 对于我们通常放在代码行末尾的单行注释,以及/* ... */ 用于多行注释。

Go 编程语言被组织成包,每个 Go 程序都应该有 主要的 包含主要的() 函数,作为程序的入口点(首先执行的函数)。

现在单击 JetBrains 的 GoLand(或 IntelliJ IDEA)中的运行按钮,或通过执行以下命令直接在终端中运行该程序 运行main.go 命令。

go run main.go 命令

恭喜!您刚刚第一次使用 Go。


§5. 摘要

以下是我们迄今为止所涵盖的有关 Go 语言的内容的回顾:

  • Go 的简单描述;
  • 它能做什么;
  • Golang 在计算机编程中如此受欢迎的原因;
  • 学习如何用 Golang 编写简单的代码。

一旦您理解了 Go 的最基本概念,您就可以进一步进行探索。


您还可以查看 hyperskill.org 上的课程.


实践任务及答案

给出了任务和答案选项。正确选项以 蓝色的 颜色。

№1. Go语言的特点

问题: 选择关于Go语言特点的正确陈述。

从列表中选择一个或多个选项:

  • 它可以用作通用编程语言✔
  • 它支持多范式编程✔
  • 语法复杂且难以阅读
  • 它支持并发编程✔

解释。 说它的语法复杂且难以阅读是不正确的。Go 的语法相对简单,类似于 C 和 Java。

以下是关于 Go 语言特性的一些额外细节:

  • 通用语言:Go 可用于开发各种各样的应用程序,包括 Web 应用程序、命令行工具和分布式系统。
  • 多范式:Go 支持多种编程范式,包括过程式、面向对象和函数式编程。
  • 并发性:Go 内置了对并发性的支持,允许多个任务同时运行。这使其非常适合开发需要处理大量请求或数据的应用程序。

总体而言,Go 是一种功能强大且用途广泛的语言,可用于开发各种应用程序。对于想要一种简单、高效且可扩展的语言的开发人员来说,它是一个不错的选择。


№2. 包和入口点函数名称

问题: 每个可执行 Go 程序都应该具有的包名和函数名是什么?

从列表中选择一个选项:

  • 程序包 main 和 func main() ✔
  • 程序包 main 和 func init()
  • 软件包 init 和 func main()

№3. Go 编程语言的主要应用

问题: Go 是一种通用语言,可用于多种用途。以下哪些选项代表了 Go 的一些最常见用途?

从列表中选择一个或多个选项:

  • 物联网平台✔
  • 命令行应用程序✔
  • 充当 markdown 或 HTML 等标记语言
  • 网络应用程序✔

解释。 Go 最常见的用途是:

  • 命令行应用程序:Go 是编写高效且可扩展的命令行应用程序的绝佳语言。它通常用于构建系统管理、DevOps 和云计算工具。
  • Web 应用程序:Go 是构建 Web 应用程序的热门选择,因为它速度快、可扩展且易于学习。它也非常适合微服务架构。
  • 物联网 (IoT) 平台:Go 是构建 IoT 平台的不错选择,因为它效率高,能够处理大量连接。它也非常适合实时应用程序。
  • 数据科学和机器学习:Go 是数据科学和机器学习领域中一种相对较新的语言,但由于其速度和可扩展性而越来越受欢迎。它也非常适合分布式计算。

所以答案是命令行应用程序、Web 应用程序和物联网平台。

选项“充当 markdown 或 HTML 等标记语言”对于 Go 来说并不常见。Markdown 和 HTML 是用于格式化文本的标记语言,而 Go 是一种用于创建应用程序的编程语言。


№4.在终端中运行该程序

问题: 假设您当前工作目录中有一个 Go 程序,该程序包含在 main.go 文件中。必须在终端中执行什么命令才能运行该 Go 程序?

从列表中选择一个选项:

  • 执行 main.go
  • 运行 main.go✔
  • 去构建main.go
  • 运行main.go

解释。 运行Go程序的正确命令是go run main.go。

go run 命令一步编译并运行 Go 程序。go build 命令编译 Go 程序,但不运行它。go exec 命令执行二进制文件,该文件是已编译的 Go 程序。run main.go 命令不是有效命令。


№5. Go 编程语言的缺点

问题: 选择关于Go语言的缺点的正确陈述。

从列表中选择一个或多个选项:

  • 与其他编程语言相比,Go 的标准库缺少一些功能✔
  • Go 不支持面向对象编程
  • Go 的标准库不支持 GUI 编程✔
  • Go 程序执行速度慢,内存占用高

解释。 关于Go语言的缺点,正确表述如下:Go的标准库相对于其他编程语言缺少一些功能;Go的标准库不支持GUI编程。

Go 确实支持面向对象编程,并且 Go 程序以其快速执行和低内存占用而闻名。


№6. 很棒的生日

问题: Google 何时开始将 Go 编程语言作为内部项目进行开发?

从列表中选择一个选项:

  • 1993
  • 1985
  • 2007 ✔
  • 2019

解释。 谷歌于 2007 年开始开发 Go 编程语言作为内部项目。

Go 语言由 Robert Griesemer、Rob Pike 和 Ken Thompson 设计。它被设计为一种简单、可靠且高效的语言,非常适合构建大规模分布式系统。

Go 于 2012 年作为开源项目发布。自那时起,它已成为各种任务的流行语言,包括 Web 开发、系统编程和云计算。所以答案是 2007 年。

其余选项均不正确。

  • 1993 年:这一年 Google 成立。Go 语言直到 2007 年才开发出来。
  • 1985 年:这是 C 编程语言发布的年份。Go 被设计为 C 的后继者,因此谷歌不太可能在 1985 年开始开发 Go。
  • 2019 年:这是 Go 1.13 版本发布的年份。Go 语言在 2019 年就已开始开发。

№7. 运行你的第一个 Go 程序

问题: 下面你将看到一个非常简单的 Go 程序的代码,它输出一条消息和一个算术运算的结果:

软件包 main

导入“fmt”

函数main(){
var Greeting = "你好,Go!"
fmt.Println(问候语)

var num1, num2 = 1, 2
fmt.Println(num1 / num2)
}

您的任务是复制上述代码,访问 Go 游乐场并将代码粘贴到在线编辑器中。

粘贴代码后,点击右上角附近的运行按钮,然后选择下面程序的正确输出。

从列表中选择一个选项:

  • 你好,Go!
    0 ✔
  • 你好,Go!
    0.5
  • 你好世界!
    0
  • 你好,Go!
    1

№8. Go 是否正确安装?

问题: 假设你刚刚按照官方的 Go 安装指南在计算机上安装了 Go。Go 安装指南建议你在终端中执行什么命令来验证你是否安装了 Go?

从列表中选择一个选项:

  • 去安装
  • go 版本✔
  • 去跑步
  • 去建造

解释。 验证 Go 是否已正确安装的命令是 go version。go version 命令会打印计算机上安装的 Go 版本。如果 Go 安装正确,您应该会看到版本号打印到控制台。

其余选项均不正确。

  • go install 安装一个 Go 包。
  • go run 编译并运行一个 Go 程序。
  • go build 编译一个 Go 程序,但不运行它。

什么是 Go 编程语言?Go 初学者简介。

Go 是一种静态类型、编译型编程语言,由 Google 的 Robert Griesemer、Rob Pike 和 Ken Thompson 设计。它在语法上与 C 类似,但还具有内存安全性、垃圾回收、结构化类型和 CSP 样式并发性。

Go 是一种通用语言,可用于多种任务,包括:

  • Web开发
  • 系统编程
  • 云计算
  • 数据科学和机器学习
  • 物联网平台

Go 以其简单、可靠和高效而闻名。它也是一种非常快速的语言,可用于构建可扩展且高性能的应用程序。

以下是 Go 的一些主要特性:

  • 静态类型:Go 是一种静态类型语言,这意味着变量和表达式的类型必须在编译时知道。这有助于防止错误并使代码更可靠。
  • 垃圾收集:Go 具有垃圾收集功能,这意味着程序员无需担心内存管理。这使得 Go 代码更易于编写和维护。
  • 结构类型:Go 使用结构类型,这意味着变量的类型由其结构而不是其声明决定。这使得代码更灵活且更易于阅读。
  • CSP 样式并发:Go 支持 CSP 样式并发,允许多个任务同时运行。这使得 Go 非常适合构建可扩展且高性能的应用程序。

如果您是编程初学者,Go 是一门值得学习的好语言。它是一种语法清晰的简单语言,也是一种可用于构建各种应用程序的强大语言。

以下一些资源可帮助您开始使用 Go:

  • Go 编程语言: https://go.dev/ - Go 官方网站,其中包含文档、教程和工具。
  • 以身作则: https://gobyexample.com/ - 一组说明 Go 编程语言的简短代码示例。
  • Go 博客: https://blog.golang.org/ - 官方 Go 博客,其中包含有关 Go 新闻、功能和最佳实践的文章。