写点什么

Rust 首次进入 TIOBE Index 前 20:排名前五的是 C、Java、Python、C++ 和 C#

  • 2020-06-28
  • 本文字数:1272 字

    阅读完需:约 4 分钟

Rust首次进入TIOBE Index前20:排名前五的是C、Java、Python、C++和C#

开发人员对 Rust 的热爱已经转变成为在现实世界中采用 Rust。


2020 年 6 月 2 号,TIOBE 网站的一篇文章宣布 Rust首次进入TIOBE Index前20


TIOBE Index 是衡量编程语言在实际使用当中流行程度的一个长期指标。目前排名前五的是 C 语言、Java、Python、C++和 C#。Rust 是 C 和 C++的直接竞争对手,在一定程度上也是 Java 和 C#的竞争对手。


有一些指标已经表明 Rust 流行程度的上升。Rust 已经连续五年成为StackOverflow最受欢迎的编程语言,每年接受问卷调查的 5 万名开发者当中有超过 80%的人给予了肯定。在最近的一项来自JetBrains的开发者调查报告中,将近 2 万名受访者中有 8%的人表示他们计划在明年学习 Rust——这使得它成为增长最快的编程语言。事实上,JetBrains 的调查还显示,67%的开发人员在使用 Rust,即使他们的老板没有要求,他们甚至在业余项目中使用 Rust。


Rust 似乎是唯一计划采用它的人数比目前正在使用它的人数还要多的一门语言。

——Reddit 用户 u/gilescope


随着 Rust 越来越受欢迎,从 TIOBE 排名中可以明显看出,越来越多的开发人员正使用 Rust 获得报酬。Rust 已经被 Mozilla、Deno 和 Polkadot 等著名的开源项目所采用。在企业领域,它也得到了 Dropbox、微软、Cloudflare 等公司的支持。


Rust 承诺能够像 C 语言一样用于交付高性能的软件,但不会像 C 和 C++那样出现与内存相关的 bug。微软表示,他们软件中 70%的严重漏洞都与内存安全有关,而且这一趋势并未减弱。20 多年前,他们广泛采用托管语言(如 Java 和 C#)来消除这类 bug。托管语言运行时(如 Java 虚拟机和.NET)通过在运行时使用垃圾回收(GC)来实现这一点。然而,GC 也引入了大量的运行时开销,它会降低应用程序的性能,更令人担忧的是,它会导致不可预测的性能问题。


Rust 的设计目标是在没有 GC 或运行时开销的情况下实现内存安全性。它提供了零成本的 C 语言指针抽象。这听起来好得令人难以置信?这样做的代价通常是使用严格的编译器来强制执行内存使用规则。Rust 是一种强类型语言,有着复杂的编译器工具链。它很受使用它的开发人员的欢迎。


Rust 的安全性和性能让它成为理想的系统应用程序开发语言,可以替代 C 语言和 C++。不过,Rust 的应用范围超出了系统应用程序。几个月前,Rust 社区发布了自己的开发者调查报告。报告表明,大多数开发人员使用 Rust 来发 Web 应用程序,除此之外,它在物联网和区块链等领域也很流行。


尽管 Rust 可以编译成安全有效的本地二进制文件,但有时候也有必要在运行时容器中运行应用程序。此类容器提供了额外的内存安全性、访问安全性、代码隔离、可移植性和可管理性。在浏览器之外,Rust 程序被编译成 WebAssembly,运行在宿主环境里,比如 Node.js、Deno 甚至是区块链。


作为一种系统编程语言,Rust 确实有一定的学习曲线。不过它也有丰富的入门教程,可以查看这些教程和示例来开始 Rust 之旅。


Rust 有双重许可,分别是 MIT 和 Apache License(2.0 版本)。Rust 欢迎开发者参与贡献,贡献者应该遵循 Rust贡献指南


原文链接


Rust Breaks into TIOBE Top 20 Most Popular Programming Languages


2020-06-28 10:1815389

评论

发布
暂无评论
发现更多内容

西昊智能家具2022新品发布,硬实力为健康撑腰

极客天地

Crypto巨头们纷纷聚焦“Building platonic”,PlatoFarm会是解决方案吗?

西柚子

模块2作业

Geek_701557

借势双碳东风:干“实事”的“虚拟”电厂

脑极体

微信朋友圈的复杂度

爱晒太阳的大白

SingletonPattern-单例模式

梁歪歪 ♚

设计模式

BuilderPattern-建造者模式

梁歪歪 ♚

设计模式

leetcode 153. Find Minimum in Rotated Sorted Array 寻找旋转排序数组中的最小值(中)

okokabcd

LeetCode 查找

解析数仓lazyagg查询重写优化规则

华为云开发者联盟

数据库

LabVIEW控制Arduino实现RGB调色灯(基础篇—6)

不脱发的程序猿

单片机 LabVIEW Arduino LIAT RGB调色灯

AbstractFactoryPattern-抽象工厂模式

梁歪歪 ♚

设计模式

PrototypePattern-原型模式

梁歪歪 ♚

设计模式

三、KVM管理工具

穿过生命散发芬芳

kvm 5月月更

Sa-Token 单点登录 SSO模式二 URL重定向传播会话示例

Java 登录验证 SaToken

Crypto巨头们ALL IN元宇宙,PlatoFarm或能突围

BlockChain先知

FactoryMethodPattern-工厂方法模式

梁歪歪 ♚

设计模式

高性能 PHP 应用容器之 Workerman

CRMEB

贪心算法:Dota2 参议院 🏯

空城机

LeetCode 5月月更

LabVIEW控制Arduino实现示波器(基础篇—7)

不脱发的程序猿

单片机 LabVIEW Arduino LIAT Arduino实现示波器

带你读顶会论文丨基于溯源图的APT攻击检测

华为云开发者联盟

安全

密码学系列之:X.690和对应的BER CER DER编码

程序那些事

密码学 程序那些事 5月月更

朋友圈架构设计

intelamd

linux之curl使用技巧

入门小站

在线字符或文本转二进制工具

入门小站

工具

Java设计模式系列学习

梁歪歪 ♚

设计模式

值得收藏:当向数据库导入大量数据时,mysql主键唯一键重复插入,如何丝滑操作并不导入重复数据呢

迷彩

MySQL 数据库 大数据运维 5月月更

LabVIEW控制Arduino实现舵机联控(基础篇—9)

不脱发的程序猿

单片机 LabVIEW Arduino LIAT 舵机联控

LabVIEW控制Arduino实现模拟数据采集(基础篇—8)

不脱发的程序猿

单片机 LabVIEW Arduino LIAT 模拟数据采集

LabVIEW控制Arduino驱动1602液晶显示屏(基础篇—10)

不脱发的程序猿

单片机 LabVIEW Arduino LIAT 驱动1602液晶显示屏

研发效能团队规模、职能划分和优劣势分析概述(第一篇)

laofo

DevOps cicd 研发效能 组织架构 平台建设

【安全】揭秘小白如何从0到1逆袭成为安全工程师

网络安全学海

网络安全 安全 信息安全 渗透测试

Rust首次进入TIOBE Index前20:排名前五的是C、Java、Python、C++和C#_编程语言_Vivian Hu_InfoQ精选文章