Go语言,生日快乐!下个10年,我是王者…

转眼都已经10年了,还记得2009年的11月吗?Go语言以开放源代码项目正式问世,并在Linux和Mac OS X平台上进行了实现,后追加了Windows系统下的实现。Go 生日快乐!!!

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

Go语言,生日快乐!下个10年,我是王者…

空前强大的开发团队,背靠Google,不乏大咖坐镇,编程界最强“牛二代”-Golang。

还记得Go语言诞生5周年时,Golang官方微博发布的文章吗?该文章生成Go语言在云计算时代找到了自己的位置,并预言“2015年将是Go语言急剧发展之年”。不出所料,2016年,Go被软件评价公司TIOBE 选为“TIOBE 2016 年最佳语言”。前年Go语言官方博客刊文纪念它作为开源项目发布8周年,称全世界约有100万Go语言开发者,同时还是2017年GitHub增长最快的编程语言。

Go语言,生日快乐!下个10年,我是王者…

10年心路历程,10年成长,为程序员服务。Go(又称 Golang)是 Google 的 Robert Griesemer,Rob Pike 及 Ken Thompson 开发的一种静态强类型、编译型语言。作为强类型静态语言(在编译阶段就确定变量类型,并且转换类型需要显示转换),具有以下特点:跟脚本语言相似、容易上手;底层是C,性能好;对goroutine调度进行了封装,即在语言层面支持协程,方便使用。

Go语言,生日快乐!下个10年,我是王者…

明眼可见,Go语言从去年11月的第10跌倒第20,Go不再受欢迎了吗?它要没落了吗?并没有,可能很多小伙伴会说Go语言存在不少缺点,像缺少框架、软件包管理和错误处理等等。试问哪门编程语言没有些许缺陷呢?作为Google第二款开源编程语言,它对多处理器系统应用程序的编程进行了优化,使得用Go语言编译的程序可以与C/C++代码速度相媲美。

如果说Go没落了,为什么那么多企业转向了Go?Google作为大东家自不必说,YouTube、AWS、阿里、京东、美团、小米、网易、新浪、哔哩哔哩、搜狗等知名企业都在大规模使用Go。

Go语言,生日快乐!下个10年,我是王者…

说到这里就不得不提Go语言的优势了。第一,强悍的性能。性能与Java或C++相似,但又不同于Java,内嵌关联数组,运行速度比Python快了近30倍。第二,令人尖叫的语言性能。与C++相比,Go并不包括如枚举、异常处理、继承、泛型、断言、虚函数等功能,但增加了切片(Slice) 型、并发、管道、垃圾回收、接口(Interface)等特性的语言级支持。Go 2.0版本将支持泛型,对于断言的存在,则持负面态度,同时也为自己不提供类型继承来辩护,有效地弥补了Python在序列化/排序和聚合中的不良表现。第三,高开发效率。如果你还被C/C++缓慢的开发效率折磨得死去活来,那么转向Go,会有意想不到的收获。此外,Go语言还拥有强大的生态系统、强制代码格式、并发与协程、丰富的内置数据类型、Defer延迟处理机制……

你以为Go语言是“小语种”,所以很多时候选择忽略它。其实,人家很会赚钱,只是太低调而已。据相关报道统计,全球范围内Go语言从业者收入中位数高达$66,000远超C#、Objective-C、R、Python、JavaScript、Java等一众语言。哈哈哈,我最会赚钱。

Go语言,生日快乐!下个10年,我是王者…

要知道Go语言最初目标领域定为网络系统基础架构(云软件)。现如今,几乎每个云服务提供商都在使用Go语言编写新架构,像Docker,Etcd,Istio,Kubernetes等等。

任何编程语言的发展都需要生态系统来支持,而生态系统也需要活跃社区支持,仅2019年全球便召开了数十个Go会议,拥有超过9万成员150+Go聚会活动。为什么Go语言会成功?严格的语言规范、开源社区、不改变其他语言、必杀技-Docker、坚持最初的信仰。开发者从不避讳Go语言的缺点,但不能否认它仍有不少闪光点。每一种编程语言都有不完美的地方,也有擅长和不擅长的事情,千万不要拿一个语言的劣势去与一个语言的优势去比较,语言只是一个工具,是实现程序设计师思想的工具,就像我们之前中学学几何时,有的时候需要用圆规,有的时候需要用三角尺一样,拿相应的工具去做它最擅长的事才是正确的选择。

此外,近期Go官方正式发布go.dev站点,该站点被Go核心团队寄望于成为全世界Gopher开发人员的中心。它将告诉gopher:谁在使用Go、使用Go做什么、怎么学习Go(学习资源聚合、方案参考、应用案例等)。因go.dev提供近年来口碑较好且受到gopher欢迎的一些初级在线学习资源,适合初学者进入学习。

相关推荐