今年是 Go 语言诞生的 8 周年,在这个特别的年,Go 语言官方博客发表的纪念刊文称,全球有大约 100 万 Go 开发者,Go 语言在 GitHub 的 2017 年最流行编程语言榜上排第九,也是 2017 年 GitHub 增长最快的语言,同比增长率 52%。
根据编程问答网站 Stack Overflow 的调查,Go 语言是唯一一个同时进入用户最喜欢编程语言和最想要编程语言榜单的前五。
很多小伙伴并不是很了解 GO 语言,让我们一起来看看他8年的辛苦历程!
1
什么是GO语言?
Go语言是谷歌推出的一种全新的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性。谷歌首席软件工程师罗布派克(Rob Pike)说:我们之所以开发Go,是因为过去10多年间软件开发的难度令人沮丧。
2
GO语言行业趋势如何?
Go 语言作为开源项目发布,已经 8 周年了。官方发表博客表示了对它的庆祝,并罗列了几项流行度趋势图。我们明显可以看出,Go 这几年的快速发展。
Go 在全世界拥有大约 100 万的 Go 开发者,它在 GitHub 的 2017 年最流行编程语言榜上排第九,Go 还以每年 52% 的增长率成为 GitHub2017 年增长最快的十种语言之一。在增长速度方面,Go 超越了增长率为 44% 的 Javascript,占据了它的位置。
在 Stack Overflow's 2017 年开发者调查中,Go 是唯一一个同时位列“最喜爱的五种语言”和“最想使用的五种语言”的语言。正在使用它的人们热爱它,还没在使用它的人们希望使用它。
在 2014 年,分析家 Donnie Berkholz 称 Go 为正在兴起的云基础架构的语言。到 2017 年,Go 已经成长为成熟的云基础架构的语言。如今,每一个云公司在其云基础架构中都有用 Go 语言实现的关键的组件,包括 Google Cloud,AWS,Microsoft 等等。
3
GO语言可以做什么?
根据谷歌著名的软件工程师——Go语言的设计人之一——Rob Pike的说法,它是用来开发”大型软件“的。
Pike说Go语言适合于很多程序员一起开发的大型软件,并且开发周期较长,支持云计算的网络服务:简言之,就是服务端软件。Go语言能够让程序员快速开发,并且在软件不断的增长过程中,它能让程序员更容易地进行维护和修改。它融合了传统编译型语言的高效性和脚本语言的易用性和富于表达性。“(作为原贝尔实验室Unix开发小组成员,Pike对系统软件有相当的认识。)
3
GO语言的优势是什么?
部署简单。Go 编译生成的是一个静态可执行文件,除了 glibc 外没有其他外部依赖。这让部署变得异常方便:目标机器上只需要一个基础的系统和必要的管理、监控工具,完全不需要操心应用所需的各种包、库的依赖关系,大大减轻了维护的负担。
并发性好。Goroutine 和 channel 使得编写高并发的服务端软件变得相当容易,很多情况下完全不需要考虑锁机制以及由此带来的各种问题。单个 Go 应用也能有效的利用多个 CPU 核,并行执行的性能好。
良好的语言设计。从学术的角度讲 Go 语言其实非常平庸,不支持许多高级的语言特性;但从工程的角度讲,Go 的设计是非常优秀的:规范足够简单灵活,有其他语言基础的程序员都能迅速上手。更重要的是 Go 自带完善的工具链,大大提高了团队协作的一致性。
执行性能好。虽然不如 C 和 Java,但通常比原生 Python 应用还是高一个数量级的,适合编写一些瓶颈业务。内存占用也非常省。
go语言虽然很多特性都被人诟病,语法层面乏善可陈,可是他毕竟解决了码农的痛点。迅速形成了一个强大的社区。强大的社区又会导致语言进一步强化自身,形成正反馈,想不成功都难。
本文来自企鹅号 - 黑马程序员视频库媒体
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文来自企鹅号 - 黑马程序员视频库媒体
如有侵权,请联系 cloudcommunity@tencent.com 删除。