Go 是 Google 开发的一种编程语言。 它于 2009 年由 Robert Griesemer、Rob Pike 和 Ken Thompson 作为开源项目发布。 从那时起,Go 语言就被用于开发其他众所周知的技术,如 Docker、Kubernetes 和 Terraform。 尽管 Go 语言在服务器端和云软件中广泛使用,但它是一种常规用途语言,具有丰富的不同用例。
Go 语言表现力强,且简单明了。 它在设计时考虑了惯用语言,这使程序员能够高效地编写高效且可靠的代码。 以 Go 语言编写的程序可以在 Unix 系统上运行,例如 Linux 和 macOS,也可以在 Windows 系统上运行。 Go 语言之所以值得注意,部分原因在于它独特的并发机制,使得编写可同时利用多个内核的程序非常容易。 它主要是一种强化静态类型的语言,这意味着变量类型在编译时是已知的。 不过,它确实具有一些动态类型化功能。
Go 语言与 C 语言有很多相似之处,它继承了 C 语言语法的许多方面,如控制流语句、基本数据类型、指针和其他元素等。 不过,该语言的语法和语义均超出 C 语言。 它还与 Java、C#、Python 等有相似之处。 一般情况下,Go 语言往往从其他编程语言中借用并调整功能,同时去掉了大部分复杂性。 例如,你可以在 Go 语言中使用一些面向对象的 (OO) 编程功能和设计模式,但并不完全实现整个 OO 范例。
Go语言既有C静态语言程序的运行速度,又能达到Python动态语言的快速开发
简单来说就是
下面是 Go 编程语言的基本原理优势:
Go语言和大多数服务器端编程语言一样,可以进行web相关应用的开发,其应用场景也比较多,比如服务器编程、分布式集群、中间件、网络编程、数据库、云平台等,其实通过这些年的发展来看,其更多的被应用在于游戏、区块链、云计算、人工智能、爬虫等领域.
容器化领域: Docker、Kubernetes(k8s)、Consul、Traefik、Etcd、Argo等 Web框架:Gin、Beego、Echo、Revel、Goframe、Go-zero、Gorm等 数据库存储:tidb、influxdb等 微服务:go-kit、go-micro、Kitex、kratos、grpc-go等 区块链:以太坊协议(go-ethereum)、endermint、cosmos-sdk等 游戏开发:g3n、leaf、gonet、engo、nano、pitaya等等 其他:Grafana、Raft等