下个10年,Go能取代Python成为开发者的首选语言吗?


选自towardsdatascience
作者:Dasaradh S K
机器之心编译
机器之心编辑部
Go为什么是2020年最受欢迎的语言?这篇文章也许能够给你答案 。
下个10年,Go能取代Python成为开发者的首选语言吗?
本文插图
30年前 , Python首次出现 , 但它花了20年的时间才获得开发者们的赏识 。 直到2019年 , Python才成为最受开发者喜爱的第二大语言 。 Python在过去 , 尤其是在过去5年中的增长是非常巨大的 。 如今它已成为机器学习和数据科学开发者的首选语言 。
在接下来的几年中 , Python无疑还将继续在这些领域占据主导地位 。 但是 , 与一些新兴语言相比 , 它存在一些明显的缺点 。 对于未来十年的开发者来说 , 这可能是一个严重的障碍 。
所以 , 有没有一种更好的编程语言来替代Python呢?就人工智能发展和数据科学而言 , Go语言或许会成为越来越多开发者的下一个首选语言 。
Python为何大受欢迎
Python受欢迎最主要的原因是它的简单 , 容易学习 。 与其他语言相比 , Python的语法很简单 , 几个小时或者几天之内就可以掌握它的基础知识 。
下个10年,Go能取代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语言 。
下个10年,Go能取代Python成为开发者的首选语言吗?
本文插图
与此同时 , 29%的学生也表示想学习Go语言 。
下个10年,Go能取代Python成为开发者的首选语言吗?