go语言(或 golang)起源于 2007 年,并在 2009 年正式对外发布。go 是非常年轻的一门语言,它的主要目标是“兼具 python 等动态语言的开发速度和 c/c++ 等编译型语言的性能与安全性”。 (推荐学习:go)
go语言是编程语言设计的又一次尝试,是对类c语言的重大改进,它不但能让你访问底层操作系统,还提供了强大的网络编程和并发编程支持。go语言的用途众多,可以进行网络编程、系统编程、并发编程、分布式编程。
go语言的推出,旨在不损失应用程序性能的情况下降低代码的复杂性,具有“部署简单、并发性好、语言设计良好、执行性能好”等优势,目前国内诸多 it 公司均已采用go语言开发项目。
go语言有时候被描述为“c 类似语言”,或者是“21 世纪的c语言”。go 从c语言继承了相似的表达式语法、控制流结构、基础数据类型、调用参数传值、指针等很多思想,还有c语言一直所看中的编译后机器码的运行效率以及和现有操作系统的无缝适配。
因为go语言没有类和继承的概念,所以它和 java 或 c++ 看起来并不相同。但是它通过接口(interface)的概念来实现多态性。go语言有一个清晰易懂的轻量级类型系统,在类型之间也没有层级之说。因此可以说go语言是一门混合型的语言。
此外,很多重要的开源项目都是使用go语言开发的,其中包括 docker、go-ethereum、thrraform 和 kubernetes。
为什么要学习go语言
如果你要创建系统程序,或者基于网络的程序,go语言是很不错的选择。作为一种相对较新的语言,它是由经验丰富且受人尊敬的计算机科学家设计的,旨在应对创建大型并发网络程序面临的挑战。
在go语言出现之前,开发者们总是面临非常艰难的抉择,究竟是使用执行速度快但是编译速度并不理想的语言(如:c++),还是使用编译速度较快但执行效率不佳的语言(如:.net、java),或者说开发难度较低但执行速度一般的动态语言呢?
显然,go语言在这 3 个条件之间做到了最佳的平衡:快速编译,高效执行,易于开发。
go语言支持交叉编译,比如说你可以在运行 linux 系统的计算机上开发可以在 windows 上运行的应用程序。这
是第一门完全支持 utf-8 的编程语言,这不仅体现在它可以处理使用 utf-8 编码的字符串,就连它的源码文件格式都是使用的 utf-8 编码。go语言做到了真正的国际化!
以上就是golang快不快的详细内容。