近两年,凭借动态特性和易于扩展性,Python 在企业级应用程序、机器学习/人工智能模型、数据科学等工作中,备受开发者青睐,其火热程度早已超越了编程语言界的老牌兵 Java。而 Python 有朝一日会成为今朝的 Java 吗?对此,本文作者发文表示,30 岁的 Python 正面临着来自编程语言世界的新参与者——Julia 的威胁,而这究竟是怎么一回事?

作者 | James Warner

译者 | 风车云马,责编 | 屠敏

出品 | CSDN(ID:CSDNnews)

以下为译文:

自上世纪90年代以来,编程语言Python已经取得了长足的进步。当Guido Van Rossum开发Python时,他几乎不知道Python会成为世界上最流行的语言之一。今天,Python是人类历史上使用最广泛的编程语言之一,并且已经应用于很多应用程序中。无论是企业级应用程序,还是机器学习/人工智能模型、数据科学工作,Python几乎在所有蓬勃发展的行业和领域中都受人青睐。

Python市场

全世界有超过800万的开发人员出于各种目的热忠于使用Python。由于其动态特性和易于扩展性,Python已经成为开发人员的首选语言。这也是为什么Python能够击败Java的原因,Java一度以来都是开发人员最喜欢的语言。也可能是由于一门语言的自然老化过程,Java正在接近尾声。大多数新语言都是为解决现代面临的新挑战而设计的。虽然之前开发的语言在解决当时的问题时效率极高,但要让它们跟上不断变化的行业和市场就变得极其困难。

但是,Python作为一种拥有如此庞大用户和开发者支持的开源语言,即使在今天仍然保持着它的巅峰状态。它丰富的库和内置的功能使其成为企业、开发人员和数据科学家的热门选择。尽管Java仍然被用于企业开发,但它在其他领域的相关性几乎为零。如果环顾四周,你很难发现一个机器学习专家在Java上设计和训练模型。尽管如此,Java是全球第二大最受开发人员欢迎的语言。

取代Java

Python已经成功地在大多数领域取代了Java。在企业开发方面,Java面临着来自谷歌的新编程语言Go的威胁。随着我们进入未来科技时代,对高性能计算的需求也在不断增长。这也是数据科学和人工智能的时代需求。尽管有人可能认为使用extreme GPU有助于提高速度和效率,但事实远非如此。它不能满足特定的数据处理需求。相反,前沿应用程序需要其他依赖项来优化性能,并帮助科学家和开发人员实现预期的目标。最终,这将引导企业和研究机构寻找更健壮的编程语言,为特定的任务及其交付速度而设计。

进入Julia的世界

这个人人都喜爱Python的时代,正面临着来自编程语言世界的新参与者——Julia的威胁。Viral Shah是Julia Computing的首席执行官,他指出,在21世纪初,开发人员更喜欢用C语言进行系统编程,用JAVA开发企业应用程序,用SaaS进行分析,用MATLAB进行科学计算。然而,今天的开发人员使用Rust进行系统编程,Go进行企业开发,使用Python/R进行分析,并使用Julia进行科学计算。

这几年来我们能够感受到从MATLAB到Python的过渡。我们知道机器学习几乎在所有应用程序中使用,而且Python库使ML模型的实现更加容易,所以人们转向了Python。在此之前,MATLAB是这项任务的最佳选择,可以帮助人们进行分析和科学计算。但是很明显,人们会把目光转向更容易实现、容易理解、更快速、更高性能和可扩展的解决方案。因此,Python完美地填补了JAVA和MATLAB的空白。

Julia立足之地

Julia和Python之间的一个关键区别是处理特定问题的方式。Julia的构建是为了减轻高性能计算的挑战。尽管Python现在已经发展为一种快速的计算语言,但是我们必须承认它不是为这项工作而设计的。然而,Julia是专门为高速处理和计算工作设计的。虽然它只有几个月的历史,却已经在研究人员和数据科学家中引起轰动。

两个月前,Julia发布了一个稳定的版本,称为1.2,它已经得到了进一步的改进,可以有效地处理大量占用资源的数据科学项目。目前有超过800名Julia开发人员,他们正在为GitHub做贡献,帮助其成为首选语言。

结论

凭借资源和速度这两把“利剑”,两个月大的Julia已经和30岁的Python打了一场硬仗。尽管现在很难说它能否完全接管Python,但它设计用于处理复杂的计算特性肯定会对世界产生影响。此外,随着问题的处理需要更多的资源和更高性能的计算,Julia可能会成为每个人的最爱。除非Python想要和Java一样的命运,否则它将不得不提高其速度和效率,并不断优化它的库。它可能不只是启动新的更新,而是完全转换引擎,使其成为更友好的CPU语言。Python相对于Julia的一个优势是其丰富的库。由于Julia还处于起步阶段,所以它需要很长时间才能构建像Python这样高效、动态的库和函数。这两种语言之间的斗争才刚刚开始,但对于需要快速高效工具来实现目标的研究人员和科学家来说,Julia已经变成了一种优势。

原文:https://towardsdatascience.com/is-julia-set-to-take-over-python-the-same-way-python-took-over-java-dd0098433e77

本文为 CSDN 翻译,转载请注明来源出处。

Julia 向 Python 宣战!相关推荐

  1. Julia 的威胁,向 Python 宣战!

    近两年,凭借动态特性和易于扩展性,Python 在企业级应用程序.机器学习/人工智能模型.数据科学等工作中,备受开发者青睐,其火热程度早已超越了编程语言界的老牌兵 Java.而 Python 有朝一日 ...

  2. 有人说Julia比Python好,还给出了5个理由

    Julia 是一种多范式的函数式编程语言,用于机器学习和统计编程.尽管 Python 通常被认为是一种面向对象的编程语言,其实它也是用于机器学习的多范式编程语言.需要注意的是,Julia 语言更多地基 ...

  3. 全面对比 MATLAB、Julia、Python,谁在科学计算中更胜一筹?

    数百种编程语言,各有优劣,各自也都有自己最为适用的场景.那么就科学计算领域而言,主流的 MATLAB.Julia.Python 会有哪些最为独特的优势呢?又存在哪些让开发者无力的缺陷?在本文中,我们将 ...

  4. julia 调用python库_Julia调用Python实现超像素分割SLIC算法

    最近想要在julia中实现 Simple Linear Iterative Clustering (SLIC) 算法对图像进行超像素分割,关于SLIC超像素分割算法,请参考SLIC Superpixe ...

  5. python 数组合并排重_并排深度学习:Julia vs Python

    python 数组合并排重 Julia could possibly be the biggest threat to Python. For a variety of applications, J ...

  6. julia与python对比_有人说Julia比Python好,还给出了5个理由

    选自medium 作者:Emmett Boudreau 机器之心编译 参与:杜伟.张倩.肖清 本文作者从速度.通用性.多重派发.适用于 ML 的程度和包管理器 5 个方面阐述了 Julia 语言相较于 ...

  7. python 对比matlab_全面对比 MATLAB、Julia、Python,谁在科学计算中更胜一筹?

    原标题:全面对比 MATLAB.Julia.Python,谁在科学计算中更胜一筹? 数百种编程语言,各有优劣,各自也都有自己最为适用的场景.那么就科学计算领域而言,主流的 MATLAB.Julia.P ...

  8. julia语言 python解释器_继 Python 解释器移植到 Firefox 后,Mozilla 现在想支持 Julia 和 R...

    Mozilla 正在资助一个将 Julia 编程语言引入 Firefox 和一般浏览器环境的项目. Mozilla 在上周五宣布,该项目在 2019 年上半年获得了 Mozilla Research ...

  9. R语言和Julia以及Python使用Feather包共享数据

    1, Feather包介绍 Feather是一种数据存储格式, 介绍博客. 这里介绍, 使用R语言生成的Feather格式的文件, 使用python和julia进行读取. 这样, 在使用三个软件时, ...

最新文章

  1. 朱晔的互联网架构实践心得S1E9:架构评审一百问和设计文档五要素
  2. Windows文件操作的直接函数调用
  3. 一文看懂百度云智峰会:发布两大中台、八大方案,落地细节精准到发丝
  4. 在GridView中使用Cache
  5. JAVA内存存储数据的位置
  6. mac USB串口工具配置
  7. K-Dominant Character CodeForces - 888C 思维 构造
  8. 端口被占用的解决方案
  9. jboss6启动报错
  10. C#winform连接Access数据库方式
  11. Vue番外之循环数组从指定下标开始
  12. 攻防世界-logmein-wp
  13. 请教:使用或移植过xprivacy的请进
  14. 为一个理想而奋斗一生
  15. 《MATLAB 神经网络43个案例分析》:第25章 基于MIV的神经网络变量筛选----基于BP神经网络的变量筛选
  16. 第一回 开篇 D3D渲染流程简介
  17. Gradle编译生成不同的版本,动态设定应用标题 / 应用图标 / 替换常量
  18. TAGE-SC-L Branch Predictors
  19. 「塔望咨询」×「皇品食品」2022上半年营销集锦
  20. Java实现短信验证码(阿里云短信服务)

热门文章

  1. yum 配置详解(转发)
  2. 【深度学习】图像匹配Siamese网络实验记录
  3. 定时重启软件_办公电脑怎样设置定时重启?依靠这款工具即可轻松实现
  4. qtxlsx编译报错_Qt5安装Qxlsx模块,以及Qxlsx模块的简单使用,附资源例程下载
  5. boost::asio::io_context的事件循环
  6. Tensorflow中与张量形状有关的操作
  7. 中国特夫行业市场供需与战略研究报告
  8. 中国烤箱盘行业市场供需与战略研究报告
  9. endnote 参考文献加序号_EndNote上手 | 毕业写论文利器
  10. AUTOCAD建模足球实体