脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Golang - 下个10年,Go能取代Python成为开发者的首选语言吗?

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

2020-10-19 22:45机器之心机器之心编译 Golang

Go为什么是2020年最受欢迎的语言?这篇文章也许能够给你答案。

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成为开发者的首选语言吗?

并发

并发是Go语言的主要优势之一。Go使用Goroutine实现并发,Goroutine是可以同时独立运行的函数。Goroutine只占2KB内存,得益于这种轻量级,成千上万个Goroutine可以同时运行。

下面这篇文章深入介绍了Go语言的更多优势。

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

文章链接:https://medium.com/@kevalpatel2106/why-should-you-learn-go-f607681fad65

为什么说Go适用于AI研究?

实际上,Go语言对于人工智能和数据科学研究本身来说并没有什么特别之处。那么为什么将其用于这些领域呢?

30年前,尚且没有将Python用于构建机器学习和深度学习算法以进行数据可视化。Python能够有现在的辉煌,是因为开发者和学生喜欢用这种语言编程,并且能够实现开发者的开发目的。

而Go语言旨在提升程序开发的生产力。和Python相比,它具备多个优点。Go语言很有可能在未来几年中取代Python,成为最受欢迎的语言。

因此,一言以蔽之:

未来十年,Go语言比其他任何一种语言都更能支持开发者们的想法。

延伸 · 阅读

精彩推荐
  • Golanggolang的httpserver优雅重启方法详解

    golang的httpserver优雅重启方法详解

    这篇文章主要给大家介绍了关于golang的httpserver优雅重启的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,...

    helight2992020-05-14
  • Golanggo语言制作端口扫描器

    go语言制作端口扫描器

    本文给大家分享的是使用go语言编写的TCP端口扫描器,可以选择IP范围,扫描的端口,以及多线程,有需要的小伙伴可以参考下。 ...

    脚本之家3642020-04-25
  • GolangGolang通脉之数据类型详情

    Golang通脉之数据类型详情

    这篇文章主要介绍了Golang通脉之数据类型,在编程语言中标识符就是定义的具有某种意义的词,比如变量名、常量名、函数名等等,Go语言中标识符允许由...

    4272021-11-24
  • Golanggo日志系统logrus显示文件和行号的操作

    go日志系统logrus显示文件和行号的操作

    这篇文章主要介绍了go日志系统logrus显示文件和行号的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    SmallQinYan12302021-02-02
  • Golanggolang 通过ssh代理连接mysql的操作

    golang 通过ssh代理连接mysql的操作

    这篇文章主要介绍了golang 通过ssh代理连接mysql的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    a165861639710342021-03-08
  • Golanggolang json.Marshal 特殊html字符被转义的解决方法

    golang json.Marshal 特殊html字符被转义的解决方法

    今天小编就为大家分享一篇golang json.Marshal 特殊html字符被转义的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧 ...

    李浩的life12792020-05-27
  • Golanggolang如何使用struct的tag属性的详细介绍

    golang如何使用struct的tag属性的详细介绍

    这篇文章主要介绍了golang如何使用struct的tag属性的详细介绍,从例子说起,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看...

    Go语言中文网11352020-05-21
  • GolangGolang中Bit数组的实现方式

    Golang中Bit数组的实现方式

    这篇文章主要介绍了Golang中Bit数组的实现方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    天易独尊11682021-06-09