Bootstrap

rust取代c语言就是笑话_为什么Rust打算取代C

rust取代c语言就是笑话

Rust编程语言是Mozilla Foundation的一个雄心勃勃的项目,该语言声称是C和C ++演进的下一步。 这些语言存在多年以来,其一些基本缺陷仍未得到解决,例如分段错误,手动内存控制,内存泄漏风险和不可预测的编译器行为。 创建Rust的目的是解决这些问题,同时改善安全性和性能。

Evrone在很多项目中都发现了Rust的使用,并且我们的工程师已经积累了丰富的使用该语言的经验。 在本文中,我们将向您介绍Rust的主要功能。

功能概要

  • 强静态类型化
  • 缺少垃圾收集,并具有通过指针手动控制数据存储位置的能力
  • 强大的内置静态代码分析器,可帮助避免内存控制和多线程问题
  • 带有简短关键字的类C语法

锈病的历史

发烧友Graydon Hore于2008年开始研究Rust。 2009年,Mozilla对这个项目表示了兴趣,仅仅一年之后,该项目就被公开宣布。 2012年发布了Rust的第一个Alpha版本。 一年后,基于Rust的Servo Web引擎的开发人员宣布已获得三星的支持。 多亏了该引擎被移植到ARM体系结构。

Rust 1.0于2015年5月发布。同年,该语言在Stack Overflow最受欢迎的开发人员工具调查中排名第三。 从2016年至今,Rust均位居榜首。

使用Rust的理由

优点

  • Rust开发人员的统一编译器,带有内置的软件包生成器和管理器,测试系统和文档生成器
  • 安全的内存管理,有助于避免分段错误
  • 使用抽象的能力,使手动内存控制更加容易
  • 修正最常见的编译错误以及清晰简洁的模式错误的建议
  • 指针只能在不安全的代码中使用–安全的代码仅包含指向保证存在的对象的链接
  • 与Mac和类似Unix的系统具有很好的兼容性

缺点

  • 缺少类和继承,这使得编写面向对象的代码更加困难
  • 非常严格的编译器,有时会限制过多的内存地址

Rust的用例

该语言支持主要的编程范例:面向对象,并行,功能和过程。 它提供了对内存的足够控制,并且足够安全,已成为OS和关键应用程序开发的流行工具。 但是,它的主要缺点是,硬件制造商的支持不足,他们更喜欢使用更普遍的C和C ++。 以下是一些用Rust编写的成功软件项目:

  • Redox是一个基于微内核的类Unix操作系统,该操作系统的大多数软件也是在Rust上编写的
  • 伺服,多线程优化的Web引擎
  • Firecracker,一种主要为无服务器环境创建的微虚拟化系统

Rust中的区块链

基于分布式分类帐的系统必须能够以最小的设备计算负载快速处理网络内的请求。 C ++工具非常适合此任务,因此使用Rust开发区块链架构将被证明更加有效。 这些是著名的例子:

  • Parity.io –以太坊和比特币的替代客户端
  • Polkadot.network –异构区块链网络
  • Exonum,基于区块链的项目的框架
  • MaidSafe,一个分布式数据处理和存储系统
  • Solana,一个用于创建基于区块链的应用程序的平台

Rust可用于创建Web项目:该语言的SDK可用于应用程序的前端和后端。 例如,客户端是通过Yew完成的-Yew是一个受React和Angular启发的框架。 使用Actix-web可以轻松创建Web服务器-Actix-web是一个非常注重性能的框架,支持WebSockets,TLS和HTTP / 2.0。

也可以使用其他使Rust能够在网上使用的工具:火箭,导管,哥谭,铅笔。

一些成功的Rust项目:

  • Dropbox,一种云存储服务OpenDNS,一种用于创建公共DNS服务器的网络服务
  • Coursera,斯坦福大学IT教授创建的教育门户
  • Rust中的机器学习

基于Rust的神经网络看起来非常有前途。 由于其性能以及使用高级抽象的低级内存控制,Rust API可以成为用于此目的的流行工具。

但是目前,使用Rust的机器学习应用还处于实验阶段。 Rust生态系统缺乏成熟可靠的库来开发与基于Python的神经网络类似的神经网络。

锈的未来

C ++在编程语言领域一直占据着主导地位已有近40年的时间,已成为一种行业标准,并一直保持至今。 Rust正在积极开发和完善,以解决C ++和其他编程语言的最关键缺陷。

在使用Rust构建的Evrone项目中,我们可以指出针对餐饮连锁店的大型ERP系统。 在其中,Rust处理微服务,为用户提供有关最近餐厅的数据。 它也是自助信息亭的基础。

Rust的另一个显着用途是Vexor –我们的持续集成服务。 在那里,Rust负责管理和调度任务,自动计算能力购买者和日志记录系统,并充当处理工作站上任务独立执行的代理的基础。

翻译自: https://hackernoon.com/why-rust-is-meant-to-replace-c-xf8l3yei

rust取代c语言就是笑话

;