为什么有些语言比别的快?

来自Ars Technica的文章评论了影响编程语言速度的各个方面。Ars这个网站虽然自称技术网站,但编程方面的文章一般比较浅,这篇也不例外。虽然文字很长,但无非讲了几点:

  1. 为什么编译型语言比解释型快,引入的间接层越多,速度越慢
  2. JIT与字节码的使用,带来了Java和C#这样介于前两者之间的中间选择
  3. 影响语言速度的因素还有很多,包括在语言设施上的投入力度(JavaScript由于Google、微软和Mozilla等公司大力投入,与Python之间拉大了距离),语言本身的设计(Fortran直接支持数组运算,这时C仅凭指针就无法匹敌)

当然,其中对一些基本概念(比如编译过程)的解释很通俗,还是有价值的。

评论中,有读者正确地指出,语言的速度当然重要,但更重要的是知道什么时候选择正确的语言,很多情况下我们不需要使用执行速度最快的语言,因为开发的速度更重要。他们的经验是:

执行速度不太重要而且没有图形界面时,用Python而不是C,开发速度快10倍 如果有图形界面,或者逻辑复杂,用C#(WinForms和WPF),比C++/Qt开发快 如果执行速度很重要,用C/C++,更喜欢C

评论里还有不少有价值的,说明Ars读者质量很高。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Android 研究

PMI-ACP 敏捷项目管理5——评估价值与规划价值

业务价值可以通过商业论证进行评估,通常会通过常用的财务术语进行评估。商业论证开发是敏捷项目管理中重要的起步点。商业论证是对项目的构想、目标、达到目的的策略、重大...

25520
来自专栏企鹅号快讯

Java初学者的福利

今天给大家分享下 Java 整套的学习资源,包括:视频、书籍(电子书)、编程工具。初学者学习编程的正确方式是:视频 + 书籍。 书籍比较系统,由浅入深,但是如果...

22760
来自专栏iOS开发日记

你知道在iOS开发的工作中为什么有人4k有人40k吗?

  如果你有志于将iOS开发作为职业,或者已经是一位iOS开发者,那么你应该听说过唐巧的名字。唐巧,2012年从网易有道离开参与创业, 目前是猿题库iOS高级研...

46390
来自专栏大数据文摘

高盛最新调查:Python超过汉语成为未来最重要技能,你准备学哪种编程语言?

27920
来自专栏CreateAMind

李飞飞CS231n机器视觉课程-全部视频ppt及中文翻译资源大全

http://vision.stanford.edu/teaching/cs231n/syllabus.html 官方站点资源如下,视频课程ppt都有

31920
来自专栏程序人生 阅读快乐

代码的未来

《代码的未来》是Ruby之父松本行弘的又一力作。作者对云计算、大数据时代下的各种编程语言以及相关技术进行了剖析,并对编程语言的未来发展趋势做出预测,内容涉及Go...

9430
来自专栏java学习

现在学习编程是学习JAVA好还是python好?

首先必须明确一点,Java和Python双方都有各自适合和发展的领域,所以别人常问我学习什么语言好,或者让我在两种语言进行比较好坏,编程语言只有适不适合,不存在...

19820
来自专栏陈树义

浅谈重构中踩过的坑

? 最近重构了公司一个将近10年的核心功能模块,踩了不少坑。在做这个重构的时候好几次都觉得做不下去,好几次压力都非常大,心想着我该不会做着做着就退出编程届了吧...

37070
来自专栏python+iOS学习交流

一样的iOS开发程序员为什么有人4k有人40k?原因就在这里!

移动开发真正火起来其实就是最近这几年,iOS 开发技术因为发展也就才这么几年,所以值得做的事情还有很多,这就造成了每年苹果的 WWDC 都会推出一堆新的特性和 ...

16900
来自专栏AI科技大本营的专栏

这次拿下Python全靠它了!一个交互式的学习资源!

你的假期余额已不足!在假期的最后一天,我们给大家介绍一本非常 nice 的 Python 学习书——Project Python。

12430

扫码关注云+社区

领取腾讯云代金券