点击上方 "Python人工智能技术" 关注,星标或者置顶
22点24分准时推送,第一时间送达
后台回复“大礼包”,送你特别福利
编辑:技术君 | 来源:机器之心
正文
Go为什么是2020年最受欢迎的语言?这篇文章也许能够给你答案。
30年前,Python首次出现,但它花了20年的时间才获得开发者们的赏识。直到2019年,Python才成为最受开发者喜爱的第二大语言。Python在过去,尤其是在过去5年中的增长是非常巨大的。如今它已成为机器学习和数据科学开发者的首选语言。
在接下来的几年中,Python无疑还将继续在这些领域占据主导地位。但是,与一些新兴语言相比,它存在一些明显的缺点。对于未来十年的开发者来说,这可能是一个严重的障碍。
所以,有没有一种更好的编程语言来替代Python呢?就人工智能发展和数据科学而言,Go语言或许会成为越来越多开发者的下一个首选语言。
Python为何大受欢迎
Python受欢迎最主要的原因是它的简单,容易学习。与其他语言相比,Python的语法很简单,几个小时或者几天之内就可以掌握它的基础知识。
即使在学习其他语言(例如C++、Java)之后,开发者通常还是更喜欢使用Python。这是因为Python库几乎可以满足所有开发需求。
所以,库和简单的语法让使用Python进行开发既简单又高效,也让其成为适合初学者的语言。
Python并不是完美的
虽然Python易于学习的特性使其广受欢迎,但它并不是完美的,在运行速度、C/C++使用和全局解释器锁三方面存在着一些问题。
速度
Python是一种解释型语言,这也导致了它最大的问题——运行缓慢。与其他语言(例如C++、Java)相比,Python的运行速度非常慢。此外,Python还是一种动态型语言。变量的数据类型在运行期间自动分配,这也使得运行速度大大降低。
使用C/C++
为了改善Python运行速度缓慢的问题,Tensorflow、Numpy和Pandas这些库都是部分用C/C++编写的。这对Python速度的提升起到了非常大的作用。基本上,Python需要借助其他语言来改善速度慢的问题。
全局解释器锁
Python的全局解释器锁(GIL)一次只能运行一个线程,但这提升了单线程的性能。Python的多线程实际上并没有同时运行多个线程。实际上,Python无法执行真正的多线程。
为什么说Go语言将成为新兴语言呢?
Go语言是一种开源编程语言,可轻松构建简单、可靠且高效的软件。
Go语言在2009年首次亮相,是谷歌开发的一种通用型语言。与Python等其他编程语言相比,Go语言具有多个优势,这也是它值得关注的地方。
速度快
Go是静态型化和编译的语言,这意味着它的运行速度是Python的数倍。而与Python不同的是,Go不需要借助其他语言就可以达到一个较快的速度。Go几乎和C++、Java一样快,而且Go语言的代码编译速度比C++和Java快得多。
易于学习
Go的语法很简单,类似于C语言。所以,Go语言同样很容易学习,如果学习者已经掌握C或者Java语言的基础知识,学起来就更简单了。
越来越受欢迎
Hackearth对来自76个国家和地区的16000余名开发者进行调查的结果显示,Go语言是2020年最受欢迎的编程语言。32%的有经验开发者表示他们想学习Go语言。
与此同时,29%的学生也表示想学习Go语言。
并发
并发是Go语言的主要优势之一。Go使用Goroutine实现并发,Goroutine是可以同时独立运行的函数。Goroutine只占2KB内存,得益于这种轻量级,成千上万个Goroutine可以同时运行。
下面这篇文章深入介绍了Go语言的更多优势。
文章链接:https://medium.com/@kevalpatel2106/why-should-you-learn-go-f607681fad65
为什么说Go适用于AI研究?
实际上,Go语言对于人工智能和数据科学研究本身来说并没有什么特别之处。那么为什么将其用于这些领域呢?
30年前,尚且没有将Python用于构建机器学习和深度学习算法以进行数据可视化。Python能够有现在的辉煌,是因为开发者和学生喜欢用这种语言编程,并且能够实现开发者的开发目的。
而Go语言旨在提升程序开发的生产力。和Python相比,它具备多个优点。Go语言很有可能在未来几年中取代Python,成为最受欢迎的语言。
因此,一言以蔽之:
未来十年,Go语言比其他任何一种语言都更能支持开发者们的想法。
原文链接:https://towardsdatascience.com/golang-ai-programming-language-for-the-20s-71890baa8c47
--END--
你在看吗?一起成长
请发表评论