写点什么

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:1815538

评论

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

重学 Java 设计模式:实战工厂方法模式

小傅哥

设计模式 小傅哥 重构 架构设计 工厂模式

JVM源码分析之堆内存的初始化

猿灯塔

游戏夜读 | 数据整理的难题?

game1night

如何参与开源项目

郭旭东

GitHub 开源

《从0到1学习Flink》—— Flink JobManager 高可用性配置

zhisheng

大数据 flink 流计算

Flink 从0到1学习—— 分享四本 Flink 国外的书和二十多篇 Paper 论文

zhisheng

大数据 flink 流计算

H2 的全文检索功能

Page

全文检索 lucene H2 内存数据库

《从0到1学习Flink》—— Flink parallelism 和 Slot 介绍

zhisheng

大数据 flink 流计算

2020年4月云主机性能评测报告

博睿数据

云计算 百度云 ucloud 性能测试 公有云

一文搞懂RSA算法

somenzz

k8s上运行我们的springboot服务之——k8s 1.16.0安装

柠檬

k8s

k8s上运行我们的springboot服务之——上传服务到docker私服

柠檬

Docker springboot

《从0到1学习Flink》—— 你上传的 jar 包藏到哪里去了?

zhisheng

大数据 flink 流计算

招联金融助力经济复苏 致力成为“智慧生活的消费金融专家”

极客编

露营之美,在乎山水之间也

李冬梅

Flink 从0到1学习—— Flink 不可以连续 Split(分流)?

zhisheng

大数据 flink 流计算

Flink 从0到1学习 —— 如何使用 Side Output 来分流?

zhisheng

大数据 flink 流计算

那个业务大拿死在了这个地方

小眼睛聊技术

Java 学习 高效工作 程序员 个人成长

北大学子手写实现《统计学习方法》书中全部算法!

GitHubDaily

人工智能 GitHub 学习 程序员

k8s上运行我们的springboot服务之——在linux安装docker并搭建docker私服

柠檬

Docker k8s

奈学教育分享:Hadoop分布式系统HDFS工作原理

奈学教育

hadoop hdfs 分布式

职场提问的“唐太宗”原则

大伟

聊一聊采访外籍人员时需要注意的几点事项

李冬梅

态度 体验 感悟

Neo4j执行计划

脚动两轮男之漂流小王子

Deno会在短期内取代Node吗?

葡萄城技术团队

node.js SpreadJS deno

Jenkins 插件开发之旅:两天内从 idea 到发布(下篇)

donghui

DevOps jenkins jenkins-plugin

Jenkins 插件开发之旅:两天内从 idea 到发布(上篇)

donghui

DevOps jenkins jenkins-plugin

1分钱秒杀!疫情季,如何为孩子的升学保驾护航?

极客编

DDD 实践手册(番外篇: 事件风暴-实践)

Joshua

领域驱动设计 DDD 事件风暴 事件驱动 Event Storming

如果你想做汽车开发,请先看看这篇。

水滴

自动驾驶 软件开发 开发

你不知道的JSON.stringify(上)

前端黑板报

Java json

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