1.1 Go 语言简介
peter 150 3

Go 语言简介

Go is an open source programming language that makes it easy to build simple, reliable, and efficient software.

正如 Go 语言官网所描述的那样,Go 是一种简单、可靠和高效的语言。Go 语言只有 25 个关键字;语法简洁,特别的接口类型等;支持垃圾回收和指针访问。

Go 设计之初是为了解决 Google 在软件开发中所遇到的一些新挑战:

  1. 多核硬件架构
  2. 超大规模分布式计算集群
  3. Web 模式导致的前所未有的开发规模和更新速度

Go 语言创始人

Go 语言出自 Ken Thompson 和 Rob Pike、Robert Griesemer 之手,他们都是计算机科学领域的大师级人物。

1) Ken Thompson

贝尔实验室 Unix 团队成员,C 语言、Unix 和 Plan 9 的创始人之一,在 20 世纪 70 年代,设计并实现了最初的 UNIX 操作系统。他还与 Rob Pike 合作设计了 UTF-8 编码方案。

2) Rob Pike

Go 语言项目总负责人,贝尔实验室 Unix 团队成员,除帮助设计 UTF-8 外,还帮助开发了分布式多用户操作系统 Plan 9、Inferno 操作系统和 Limbo 编程语言,并与人合著了《The Unix Programming Environment》,对 UNIX 的设计理念做了正统的阐述。

3) Robert Griesemer

就职于 Google,参与开发 Java HotSpot 虚拟机,对语言设计有深入的认识,并负责 Chrome 浏览器和 Node.js 使用的 Google V8 JavaScript 引擎的代码生成部分。

为什么要学习Go语言

如果你要创建系统程序,或者基于网络的程序,Go 语言是很不错的选择。作为一种相对较新的语言,它是由经验丰富且受人尊敬的计算机科学家设计的,旨在应对创建大型并发网络程序面临的挑战。

在 Go 语言出现之前,开发者们总是面临非常艰难的抉择,究竟是使用执行速度快但是编译速度并不理想的语言(如:C++),还是使用编译速度较快但执行效率不佳的语言(如:.NET、Java),或者说开发难度较低但执行速度一般的动态语言呢?显然,Go 语言在这 3 个条件之间做到了最佳的平衡:快速编译,高效执行,易于开发。

Go 语言支持交叉编译,比如说你可以在运行 Linux 系统的计算机上开发可以在 Windows 上运行的应用程序。这是第一门完全支持 UTF-8 的编程语言,这不仅体现在它可以处理使用 UTF-8 编码的字符串,就连它的源码文件格式都是使用的 UTF-8 编码。Go 语言做到了真正的国际化!

Go 语言吉祥物

Go 语言有一个吉祥物,在会议、文档页面和博文中,大多会包含下图所示的 Go Gopher,这是才华横溢的插画家 Renee French 设计的,她也是 Go 设计者之一 Rob Pike 的妻子。

Go 语言吉祥物

预览图
评论区

索引目录