转载

Go语言能够取代Java,成为下一个王者吗?

链客,专为开发者而生,有问必答!

此文章来自[区块链技术社区](https://www.liankexing.com),未经允许拒绝转载。

Go语言能够取代Java,成为下一个王者吗?

近几年来,Go语言真是越来越火了。我也做过几个Go语言的项目了,我们公司很多微服务的项目也在由Java往Go上面转了。我们来看看Tiobe世界编程语言排行的最新排名,Go已经从去年的第14名上升到今年的第十名了。虽然Java仍然占据编程界的老大哥的地位,但是它所占的份额确实是有所下滑。还有C和C++的市场份额也是逐年下滑。

Tiobe最新编程语言排行

Go语言能够取代Java,成为下一个王者吗?

再来看看编程语言历年来的流行趋势,如下图(数据来自Tiobe):

编程语言流行趋势

Go语言能够取代Java,成为下一个王者吗?

老牌编程语言诸如Java,C,C++的流行程度逐渐下降,虽然依旧高高在上,但是已经有很多份额被Python,Go等抢走了。从图中可以看到,Go语言从2016年就开始飙升了,增长速度不可谓不快。记得16年的时候我才刚刚毕业没多久,市场上已经对Go语言表现出了异常的热情,从Go语言的程序员的工资可以看出。当时北上广基本都在14K以上招Go语言开发者,下面我找几个招聘Go语言的招聘信息大家看看,如下图所示:

Go语言招聘信息

Go语言能够取代Java,成为下一个王者吗?

为什么Java在逐渐被Go抢占风头呢?首先,Java能够做到的事情Go都能够做到,甚至能够做得更好。现在Java用于服务端开发的最多,而Go完全能够胜任。在Java里面有分布式,多线程,微服务,RPC等,用Go语言也完全不虚,我们公司的分布式,微服务架构就有用Go实现的,一样非常方便快捷。时下流行的趋势是大数据,人工智能,数据挖掘,机器学习等,这些用Java做起来很麻烦,都有相应的编程语言和框架,用Go自然也可以做。在这方面Java和Go的能力基本相当。

其次,用Go语言开发更迅速。用Java语言编程,一个简单的增删改查的业务你要怎么做?创建实体类JavaBean,生成Mybatis查询脚本,写Service,最后还要写Controller。整个代码加起来随随便便都有300行以上了。如果用Go语言来书写,代码层次上来看可以简洁很多。当然,用Go做MVC架构的开发大致流程和Java也没差。

再次,和臃肿庞大的Java框架相比,Go就显得非常迷你了。Go语言是一款极为简约的编程语言,他的框架也不似Java相关框架那么庞大臃肿。和它的开发效率一样,它的执行效率也是各大编程语言里面的佼佼者。它可以在一个进程中执行无数个写成,用来确保它的高效性。现在的很多微服务框架都选用Go作为开发语言,就是因为它快速并且高效。

golang

Go语言能够取代Java,成为下一个王者吗?

那么,Go语言真的是天衣无缝的吗?这也不尽然,这么多年来Java,C,C++地位稳固也是有它们的道理的。Java框架稳定,技术成熟。当我想要一种什么技术的时候,Java的开源框架必然会给出适合的技术解决方案,而且绝不止一种。而Go语言就没有这个优势了,毕竟作为新兴技术,它的各类开源框架还不够多。我用过一款Beego的框架,感觉还不错。

所以,小编认为,Go在短期内还是不能取代Java。以后它能不能成为最流行的语言,请大家拭目以待吧。

原文  https://studygolang.com/articles/21891
正文到此结束
Loading...