热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

挑战Python的四个语言:Swift、Go、Julia、R

Python时下正在“最热门的编程语言榜”上春风得意,看起来将会成为一门不朽的语言。但是现在,很多其他语言也逐渐显现出Python的一些优点:编程方便,对数学和科学计算拥有强大的处理能力,庞大的第三方库。下面是Python的一些潜在的挑战者,并讨论了Python是如何保住它第一的席位的。
  没什么是永恒的——包括编程语言。很多看起来可能是将来的佼佼者,到头来可能被人们遗忘。无论是因为不可抗拒的原因,还是因为自身发展的原因。

  Python时下正在“最热门的编程语言榜”上春风得意,看起来将会成为一门不朽的语言。但是现在,很多其他语言也逐渐显现出Python的一些优点:编程方便,对数学和科学计算拥有强大的处理能力,庞大的第三方库。

  下面是Python的一些潜在的挑战者,并讨论了Python是如何保住它第一的席位的。

 Swift

  它是什么:苹果公司的一种编程语言,主要用于原生的iOS开发,但是现在已经开源,并有向服务器端发展的倾向。

  它的优点:使用Swift编程是一种毫无障碍的体验!用起来相比于编译型语言(比如,它间接的前任Objective-C)更像是一种脚本语言(比如Python)。Swift的决定性的优点是它的速度——它是由LLVM编译框架编译成机器码的,所以它具备真正的多线程。Python还在这方面挣扎。

  如果说开发速度要比执行速度重要的话,Python在方面更有优势。但是Swift有XCode IDE的“Playground”模式。

  Python的优点:一方面,相比于Python来说,Swift是一门新型的编程语言,Python有所有成熟的语言所具备的有点——大量的用户基础,大量的库,成熟的多平台支持。Swift现在甚至还不能支持Windows(如果不算上第三方库的话),虽然这是将来必定会实现的特性。Swift还会产生对苹果工具链的依赖(比如Xcode),而Python的依赖就少的很。

 Go

  **它是什么:**Google的“表现力强、简洁、干净、高效”的语言,从Docker及其相关项目到InfluxDB数据库,Ethereum坏链系统和Canonical的Snappy包管理工具都是用Go写成的。

  它的优势:和Swift一样,Go语言也会编译成平台相关的机器码,所以它不仅可以在多任务方面比Python快很多,还还可以在运行时不像Python那样生成额外的目标。Go代码编译速度非常快,开发速度也很快,所以它更像一门解释性的语言。

  Python的优势:虽然Go不像Swift那么新——它在2009年发布——Python在用户和库的数量方面还是占有优势。此外,Go的语法和错误处理方式和Python相去甚远。所以,现在Python用户很难转移到Go,但是不会阻止新用户选择这样一门语言。现阶段,Python的安装器让使用和构建Python应用非常简单——更不必说像Linux这样的系统,Python已经成为了标准。

 Julia

  它是什么:在2012年发布,是面向技术应用的一门编程语言,例如数据分析和线性代数。

  它的优点: Python一个很大的用处是数学和科学应用——多亏了Numpy这样的库和交互式的IPython编辑程序。Julia的目标用户也是同样的群体,和Go、Swift一样,它也比Python快。它还有一个正在不断扩展的包,不仅仅包括科学和数学计算的应用,还有很多Python的功能,比如从云端提供商那里取得数据。

  Python的优点: Julia有和Python类似的库,但是Python并不满足现状,还在马不停蹄地优化语言的核心和开发环境。Python的速度并非一定不及Julia(或者其他Python的竞争者),只要针对不同的工作选择恰当的库完成,速度还是客观的。

  Julia语言本身还存在一些争议。比如,Julia的数组下标是从1开始的,而不是0——这不仅和Python比是一个缺点,很其他语言比起来也是。(很多第三方的包索引也是从1开始,但是仍让人很不习惯。)

 R

  它是什么:无论是就开发环境还是语言本身来说,这都是一个很老的语言了。它专为统计学设计。

  它的优点: R有很多Python的优点,比如有丰富的第三方库等。但是R是专门为统计学而生的,并且在后面的发展中依然专注于此。Python也可以做数学和统计学方面的计算,但是在这方面被R语言完全碾压。 

  R语言还引起了很多大公司的注意,微软收购了一个R语言标准实现的开发商开服务它的云端数据。Hewlett-Packard开发了一种分布式的R语言计算产品,可以同时跨多个节点运行。这个产品在将来可以把Python完全挤出这个领域。

  Python的优点:有时候,作为一个多用途的语言也有它的好处。R语言的功能局限在统计学计算方面。由于开发环境的限制,构建R语言应用也很麻烦,使用Python创建应用就很简单。而且通过像RPy2这样的包可以轻松地将R语言和Python联合起来。

  微软对R语言的投入很多,但是同时微软也对Python提供了很多支持,所以这两种语言都能在Azure上工作的很好。

  原文:4 languages poised to out-Python Python

以上就是挑战Python的四个语言:Swift、Go、Julia、R的详细内容,更多请关注 第一PHP社区 其它相关文章!


推荐阅读
  • 本文介绍如何使用JavaScript中的for循环来创建一个九九乘法表,适合初学者学习循环结构的应用。 ... [详细]
  • 2023年,Android开发前景如何?25岁还能转行吗?
    近期,关于Android开发行业的讨论在多个平台上热度不减,许多人担忧其未来发展。本文将探讨当前Android开发市场的现状、薪资水平及职业选择建议。 ... [详细]
  • 开发技巧:在Interface Builder中实现UIButton文本居中对齐的方法与步骤
    开发技巧:在Interface Builder中实现UIButton文本居中对齐的方法与步骤 ... [详细]
  • 在使用Block时,正确的声明方法和确保线程安全是至关重要的。为了保证Block在堆中分配,应使用`copy`修饰符进行声明,因为栈中的Block与栈的生命周期绑定,容易导致内存问题。此外,还需注意Block捕获外部变量的行为,以避免潜在的循环引用和数据不一致问题。建议深入研究相关文档,以掌握更多高级技巧和最佳实践。 ... [详细]
  • 当前,众多初创企业对全栈工程师的需求日益增长,但市场中却存在大量所谓的“伪全栈工程师”,尤其是那些仅掌握了Node.js技能的前端开发人员。本文旨在深入探讨全栈工程师在现代技术生态中的真实角色与价值,澄清对这一角色的误解,并强调真正的全栈工程师应具备全面的技术栈和综合解决问题的能力。 ... [详细]
  • 本文探讨了程序员这一职业的本质,认为他们是专注于问题解决的专业人士。文章深入分析了他们的日常工作状态、个人品质以及面对挑战时的态度,强调了编程不仅是一项技术活动,更是个人成长和精神修炼的过程。 ... [详细]
  • 在1995年,Simon Plouffe 发现了一种特殊的求和方法来表示某些常数。两年后,Bailey 和 Borwein 在他们的论文中发表了这一发现,这种方法被命名为 Bailey-Borwein-Plouffe (BBP) 公式。该问题要求计算圆周率 π 的第 n 个十六进制数字。 ... [详细]
  • 二维码的实现与应用
    本文介绍了二维码的基本概念、分类及其优缺点,并详细描述了如何使用Java编程语言结合第三方库(如ZXing和qrcode.jar)来实现二维码的生成与解析。 ... [详细]
  • 本文详细介绍了iOS应用的生命周期,包括各个状态及其转换过程中的关键方法调用。 ... [详细]
  • importjava.io.*;importjava.util.*;publicclass五子棋游戏{staticintm1;staticintn1;staticfinalintS ... [详细]
  • 本文详细介绍了笔记本电脑上多种实用的快捷键,包括屏幕调整、图形设置、分辨率更改、驱动更新、导航操作、音量控制及屏幕锁定等,旨在帮助用户更高效地使用笔记本电脑。 ... [详细]
  • 解决Visual Studio Code中PHP Intelephense误报问题
    PHP作为一种高度灵活的编程语言,其代码结构可能导致Intelephense插件在某些情况下报告不必要的错误或警告。自1.3.3版本起,Intelephense引入了多个配置选项,允许用户根据具体的工作环境和编程风格调整这些诊断信息的显示。 ... [详细]
  • [译]  OS X 和 iOS 的测绘框架Core Plot 入门教程
    [译] OS X 和 iOS 的测绘框架Core Plot 入门教程 ... [详细]
  • SoIwanttomakesomethinglikethisusingswiftandxcode:所以我想用swift和xcode制作这样的东西:WhereIget ... [详细]
  • PyThon_Swift 势必取代 Python?
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Swift势必取代Python?相关的知识,希望对你有一定的参考价值。 ... [详细]
author-avatar
记忆的旅行者
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有