广告

编程语言发展10年,发生了什么变化?

2019-10-08 15:14:04 Cabe Atwell 阅读:
移动设备确实是推动程序语言普及的重要因素之一,因为某些语言更适合用于开发行动App,或者更适于搭配平板计算机和智能型手机等便携设备使用…

我们是多么地喜欢各种移动设备啊!记得曾经照相手机让我们记录最宝贵的时刻,而互联网及其多种通讯工具使我们能够与遥远的朋友和家人保持联络。但我们通常并不会想到实现这个互连世界背后的「程序语言」(programming languages)。YF7ednc

然而,值得注意的是,随着智能型手机与穿戴式装置等移动设备普及,近来有些程序语言的“人气”开始起了变化,这让我们有机会得以一窥数字世界的走向,同时也提醒自己究竟发展到什么地步了。YF7ednc

Python稳居龙头宝座

IEEE Spectrum在今年九月发布2019年程序语言排行榜,许多人可能会惊讶地发现Python仍保持其龙头宝座。自2017年以来,Python这种基于脚本(script-based)的语言,在IEEE Spectrum的排名中一直排名第一。YF7ednc

但这其实一点都不意外。IEEE采用加权标准对语言进行评分。去年,Python的得分为100,而C++的得分为99.7,Java为97.5分,C则有96.7分。然而,今年,程序语言领域出现了一些变化。Python仍以100分之姿位居榜首,但Java得分掉到96.3,排名却前进至第二。C以94.4的得分排第三名,而C++的得分与排名则双双滑落至87.5分与第四,而统计程序语言R以81.5的得分排名第五。JavaScript、C#、MATLAB、Swift和Google Go依次排名第六至第十。YF7ednc

033ednc20190929YF7ednc

2019年十大程序语言排行榜(来源:IEEE Spectrum)YF7ednc

值得注意的是,IEEE Spectrum的排名包括用于支持电子和电机工程之硬件和软件应用的所有程序语言。IEEE主要根据IEEE、Reddit、Stack Overflow、Twitter、Google、GitHub、CareerBuilder、Hacker News和GitHub等来源提供的11种测量指标,评选出今年度的排行榜。YF7ednc

IEEE并不是唯一对程序语言进行排名的组织。TIOBE也专门针对软件发布了程序语言的年度排名。在不考虑硬件的前下,TIOBE的2019年程序语言排行榜显示Java是最常用的语言,其后依序是C、Python、C++、C#、Visual Basic .NET、JavaScript、SQL、PHP和Objective-C。YF7ednc

034ednc20190929YF7ednc

TIOBE程序语言Top 10排名走势(来源:TIOBE)YF7ednc

10年前的排名

在2010年,TIOBE Programming Index发布的十大程序语言排名分别是:Java、C、C++、PHP、(Visual) Basic、C#、Python、Objective-C、Perl和Ruby。而IEEE在2014年首度发表的排行榜中,也包括了C#、PHP和Ruby。YF7ednc

发生了什么变化?

对于某些程序语言而言,例如Ruby和Ruby on Rails,执行速度和启动速度还不够快,因而无法全面支持各种商业产品。而其他有的语言,如PHP,由于安全性较差是导致Facebook等公司未能继续使用该语言的重要因素。YF7ednc

Python、Java、JavaScript和C则由于是通用语言而使其得以广泛使用。特别是针对Python而言,有许多专用的工具库可支持机器学习、深度学习(Theano)、人工智能(AI),以及针对微控制器(MCU)和小型计算机(如Adafruit、Arduino和Raspberry Pi)的自造者工具库。它还具有可轻松让Python程序代码与其他产品或库(如Google Tensor Flow和Microsoft Cognitive Toolkit)搭配使用的工具库。 Python有多种用途,而且是一种相当容易学习的程序语言,同时还提供当今大数据(Big Data)世界所需的安全性。YF7ednc

更多因素:硬件、安全性、行动装置

还有一些其他因素可能影响程序语言的普及。程序语言固有的安全性是其中的原因之一,另一项素是行动装置的普及。根据统计,在2018年,70%的美国人都拥有智能型手机,50%的人拥有平板计算机。在这些行动用户中,90%的连网时间都花在使用应用程序(App)而非因特网。YF7ednc

行动装置确实是推动程序语言普及的重要因素之一,因为某些语言更适合用于开发行动App,或者更适于搭配平板计算机和智能型手机等便携设备使用… ——这也让我们想到了另一个因素:硬件。YF7ednc

掌握我们日常生活各种功能的行动装置与穿戴式装正置日益普及,包括从睡眠和活动监测器到智慧手表和穿戴式装置等所有装置。随着穿戴式装置普及,以及基于桌面计算机的标准软件减少,可支持这种需求的程序语言普及性势必会再进一步地增加。YF7ednc

过去十年来发生了许多变化,随着我们朝着更加密切互连的未来前进,还将会看到更多的变化。目前,使用最广泛和最安全的程序语言将仍然是使用最广泛的语言,但有谁知道程序的未来将会如何发展?尤其是随着电子产品工程(例如忆阻器)的不断发展,未来的变化与发展无限!YF7ednc

(原文发表于ASPENCORE旗下EDN姐妹媒体EETimes,参考链接:10 Years of Programming Language Evolution,编译:Susan Hong)YF7ednc

责编:Demi XiaYF7ednc

 YF7ednc

本文为电子技术设计原创文章,未经授权禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
  • 编程语言是在不断发展
Cabe Atwell
机械工程师/EE Times资深博主。Cabe Atwell是一名居住在芝加哥地区的电气工程师。
  • 微信扫一扫
    一键转发
  • 最前沿的电子设计资讯
    请关注“电子技术设计微信公众号”
  • 深圳允许完全自动驾驶车辆上路,主驾无需坐人 据EDN电子技术设计引援央视财经报道,从8月1日开始,《深圳经济特区智能网联汽车管理条例》正式实施,智能网联汽车列入国家汽车产品目录或者深圳市智能网联汽车产品目录,这也让深圳成为了国内首个允许L3级别自动驾驶车辆合法上路的城市。
  • 理想ONE高速起火烧成光架,其1.2T三缸增程器曾被指隐藏 近期,网络平台上发布了一段理想ONE在行驶过程中,车辆出现起火的视频内容。现场拍摄的灭火后图片显示,该轿车过火后仅剩骨架,车辆前部增程器位置受损严重,车辆尾门已经在过火后从车身主体脱落。此前,曾有国内汽车媒体对一台行驶了10万公里的理想ONE的东安1.2T三缸增程发动机进行拆解,被指隐藏暗病。
  • 上海微系统所使用石墨烯纳米带研制出世界上最小尺寸的 非易失性相变随机存取存储器(PCRAM)被认为是大数据时代新兴海量存储的有希望的候选者之一。然而,相对较高的编程能量阻碍了 PCRAM 中功耗的进一步降低。利用石墨烯的窄边接触可以有效降低每个电池中相变材料的活性体积,从而实现低功耗运行。
  • 可解决工业自动化和IIoT挑战的MCU 工业自动化和工业物联网(IIoT)设计人员的性能要求不断变化。就MCU而言,他们希望获得更快的处理速度、更多的内存、更好的连接性和更多的安全功能。
  • 我国建成开通5G基站数达185.4万个 工信部近日透露,截至2022年6月底,中国5G基站数达到185.4万个,其中二季度新增基站近30万个,已建成全球规模最大、技术领先的网络基础设施,实现“县县通5G、村村通宽带”。。
  • 第三代半导体——碳化硅材料之制程与分析 SiC功率电子是加速电动车时代到来的主要动能。以SiC MOSFET取代目前的Si IGBT,不仅能使电力移转时的能源损耗降低80%以上,同时也可让芯片模块尺寸微缩至原本的1/10,达到延长电动车续航里程及缩短充电时间的功效。
  • 开源软件真的可靠吗? 乍看之下,采用开源软件似乎是个不错的办法,但归根究底,开源软件有几个特性可能会使其变得“邪恶”...
  • GaN是否可靠? GaN产业已经建立一套方法来保证GaN产品的可靠性,因此问题并不在于“GaN是否可靠?”,而是“如何验证GaN的可靠性?”
  • 国际象棋机器人Chessrobot夹断对手手指,意外还是设计缺 据悉,在7月19日的莫斯科国际象棋公开赛期间,一位7岁小男孩疑似因提前走子犯规手,意外被“对手”国际象棋机器人Chessrobot夹住手指,造成指骨骨折,该事件登上了热搜榜。该男孩是莫斯科9岁以下最强的30位棋手之一。
  • MIT研究人员发现了一种性能比硅更好的半导体材料 硅是地球上最丰富的元素之一,其纯净形式已成为许多现代技术的基础,从太阳能电池到计算机芯片,但硅作为半导体的特性远非理想。现在,来自 MIT、休斯顿大学和其他机构的一组研究人员发现了一种称为立方砷化硼的材料,这种材料可以克服硅的上述两个限制。其为电子和电洞提供了高迁移率,并具有优良的热导率。研究人员表示,这是迄今为止发现最好的半导体材料,在将来也可能说是最好的材料。
  • 增强型GaN HEMT的漏极电流特性 增强型GaN基高电子迁移率晶体管(HEMT)已经采用两种不同的结构开发出来。这两种增强型结构是金属-绝缘层-半导体(MIS)结构和栅极注入晶体管(GIT)结构。MIS结构具有受电压驱动的小栅极漏电流,而GIT则具有脊形结构和高阈值电压。两者也都有一些缺点。MIS对栅极干扰的可靠性较低,阈值电压较低,而GIT的栅极开关速度较慢,栅极漏电流较大。
  • M2 Pro 和 M2 Max 或是苹果首款采用台积电3nm 工艺的 M1 Pro 和 M1 Max 最多可配置 10 核 CPU 和 32 核 GPU。借助 M2 Pro 和 M2 Max,Apple 有望突破这一门槛,为这两个领域带来更多的核心数量。目前M2 Pro相关的爆料很少,但据称M2 Max 有12 核 GPU 和 38 核 GPU。12 核 CPU 将包括 10 个性能核心和两个能效核心。
广告
热门推荐
广告
广告
EE直播间
在线研讨会
广告
广告
面包芯语
广告
向右滑动:上一篇 向左滑动:下一篇 我知道了