当前位置: 首页 > 科技观察

Go语言今年11岁了,它走向何方,现状如何?

时间:2023-03-12 01:39:21 科技观察

本文转载自微信公众号《我的脑子是炸鱼》,作者陈建宇。转载本文请联系脑筋急转弯公众号。别说你不知道,直接说下一跳。Go语言开源11年,感觉一路高歌。ReleaseHistory(由polarisxu整理)如下:2011年3月16日,Go语言第一个稳定版r56发布;2012年3月28日,Go语言第一个稳定版正式版Go1发布,承诺兼容1.x;2013年5月13日,Go1.1正式版发布。2013年12月1日,Go1.2正式发布;2014年6月18日,Go1.3正式发布;2014年12月10日,Go1.4正式发布;2015年8月19日,Go1.5正式发布release。该版本实现bootstrapping,即去掉C代码,使用Go开发Go语言;2016年2月17日,Go1.6正式发布;2016年8月15日,Go1.7正式发布;引入了上下文包;2017年2月17日,Go1.8正式发布;2017年8月24日,Go1.9正式发布;引入了别名;2018年2月16日,Go1.10正式发布;2018年8月25日,Go1.11正式发布。开始大力支持Gomodules;2019年3月1日,Go1.12正式发布;2019年9月3日,Go1.13正式发布;2020年2月25日,Go1.14正式发布;goroutine支持异步抢占式调度;2020年8月11日,Go1.15正式发布;2021年2月,Go1.16有望正式发布;将包括一个新的文件系统接口和支持在构建时嵌入静态文件、链接器重写、默认启用Go模块并正式支持AppleSilicon(GOARCH=arm64)Mac。纵观目前的Go语言,在国内掀起了一波又一波的热潮,非常火爆。极客时间、拉勾教育、掘金小册子、慕课等各大平台出现了大量与Go语言相关的付费专栏/视频。实际工作方面,字节跳动、腾讯转向Go语言等各大一二线大厂都出现了不少Go岗位,这也说明他们到了更好的风口。在开源项目层面,Kubernetes、Etcd、Prometheus、Docker等大量云原生相关组件都是用Go语言开发的。了解Go语言可以更轻松地解决问题。在企业开发层面,大量其他语言的开发者已经过渡到Go语言。在企业软件开发中,新项目使用Go语言,旧项目保留,形成了新旧系统都维护,然后逐步迁移的扼杀者模型。:Strangler模式多见于PHP和C++语言的面试,在企业会形成Go+PHP(新+旧系统)的局面,或者说Go调整CGO的运行模式。这也是由于Go语言的易用性和某些粘合特性。在培训机构层面,各大机构都对Go语言发起了一定程度的攻击,但目前Go语言的大部分以中高级人才为主,即具有相关经验的软件开发从业人员。其他语言。因此,培训机构的市场条件相对较差。在社招和岗位层面,狭义上,我写的2018年的?基本情况还是一致的:2018年市场分析以下是收集到的《2020年中国围棋开发者调查报告》的地域分布byGoCN:2020年中国围棋开发者调查报告围棋语言最流行的地区依然是:北京、上海、深圳。主体集中在一线城市,那里的机会最多。看数据:TIOBE从TIOBE的编程语言排行榜来看,Go语言的整体热度并不是特别高(与老牌语言相比),但作为一门编程语言,它在短短11年的时间里已经很不错了。性能:TIOBE排行榜同时,业界常说Go语言会干掉PHP、C++、Java等,目前来看短期内不现实,官方也没有这方面的计划,因为它足以为正确的场景选择正确的语言。TIOBE提示本月排名第13,最高排名出现在2020年5月,第10。近期基本稳定在这个数字附近,至少近几年,是杀不死大佬的。展望未来Go1目前一如既往地遵守Go1兼容性承诺,这给很多正在使用Go语言的公司带来了提振。但是也给Go语言带来了一些“麻烦”。也就是说,具有破坏性更改的更改不能在Go1中实现。因此,为了解决一些“问题”,我们也想达到更好的特征目标。2018年,Go2计划发布。详情请参考Go2,herewecome!,其中包含了大量的特性。从目前的基本说法和实际情况来看,所有兼容的实现都会在Go1中实现。比如最受期待的功能之一“generics”,预计最早会在Go1.17中发布。示例://Printprintstheelementsofanyslice.//PrinthasatypeparameterTandhasasingle(non-type)//parameterswhisasliceofthattypeparameter.funcPrint[Tany](s[]T){//sameasabove}6月下旬发布了最新的设计稿,如果对泛型有进一步的需求注意design/go2draft-type-parameters,一些不兼容的修改,如果不能在准确评估后直接实现,会被纳入Go2计划:Milestones相信Go2发布的时候,肯定不会是gorunxxx,而且估计会改变命令集来区分。综上所述,在11岁那年,Go语言在中国风靡一时。最近接触的一位运营大佬称Go语言“准备占据未来语言的半壁江山”。还在观望的读者可以考虑出手,享受一波红包。但现阶段的“成功”并不意味着后续会继续走强,这离不开社区所有开发者对开源的努力。TIOBE索引让我们一起来思考两个问题:你为什么喜欢Go语言?它的缺点是什么?如果Go语言想要继续占领更多的市场,需要重点关注哪些领域?你的答案是什么?在评论区告诉大家吧!