0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Google为Chromium引入Rust?

程序喵大人 来源:程序喵大人 2023-01-16 09:30 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

最近看到一篇Google的Blog:Google官宣要把Rust引进Chromium项目中。此举是为了加快开发速度(更少的代码编写,更少的设计文档、更少的安全检查),并提高Chrome的安全性(增加没有内存安全错误的代码,降低代码的错误密度)。

Blog链接:https://security.googleblog.com/2023/01/supporting-use-of-rust-in-chromium.html

从此举可以看到Rust的重要性,以及它广阔的前景。

我们为什么要学习Rust?

首先可以从Rust官网上找到答案。

Rust是一门赋予每个人构建可靠且高效软件能力的语言。

它有很多特点:

高性能:Rust 速度惊人且内存利用率极高。由于没有运行时和垃圾回收,它能够胜任对性能要求特别高的服务,可以在嵌入式设备上运行,还能轻松和其他语言集成。

可靠性:Rust 丰富的类型系统和所有权模型保证了内存安全和线程安全,在编译期就能够消除各种各样的错误。

生产力:Rust 拥有出色的文档、友好的编译器和清晰的错误提示信息, 还集成了一流的工具——包管理器和构建工具, 智能地自动补全和类型检验的多编辑器支持, 以及自动格式化代码等等。

全世界已有数百家公司在生产环境中使用 Rust,以达到快速、跨平台、低资源占用的目的。很多知名的软件,例如Firefox、Dropbox和Cloudflare都在使用 Rust。从初创公司到大型企业,从嵌入式设备到可扩展的 Web 服务,使用Rust 都非常合适。文档、工具和社区都很好,足以帮助大家顺利完成 Rust 项目!

相比于C++:它的性能同样极高,它有更优质的跨平台能力,有更好的包管理工具和构建工具,众所周知C++对网络模块的支持不好,而Rust则支持的特别好。同时它对内存的把控也很严格,让开发者在编译阶段就能发现绝大多数的内存错误。

安装方便:crates.io 上拥有成千上万的软件包,想要的解决方案在这里几乎都能找到。站在巨人的肩膀上,团队可远离重复,专注创新。

测试方便:Rust 出色的测试工具能让您对代码放心。cargo test 是 Rust 统一的测试方案。测试代码既可写在功能代码之后,也可放在独立文件中,它满足您所有的测试需求。

部署方便:cargo build 可为不同平台构建精益的可执行文件。仅需一行命令,您的代码就能针对 Windows、Linux、macOS 和 Web 进行编译。支持全部现代平台接口,无需定制构建文件。

目前,微软很多项目转向了Rust,所有的Windows API都已经有Rust接口。

Meta正在推广Rust,Amazon也在更多的依赖Rust。

Google现在很多项目也使用了Rust,还特意为Android开发者出了一套Rust教程。

NSA(美国 安全 局)也建议使用内存安全的语言,比如Rust。

Rust的重要知识点

所有权、生命周期、内存管理

这块是Rust的核心,也是Rust主要区别于其他语言的地方,理解了Rust所有权和生命周期的理念,才能知道Rust是如何在编译期就检测到我们那些不安全的内存使用情况的。

trait:Rust不支持class这种面向对象的方式,但是通过trait特性可以达到面向对象的效果。

FFI:Rust和其他语言交互需要通过FFI达到目的。

并发:Rust一大特性就是无惧并发,一定要学会使用和理解Tokio。

Rust的学习资料

首选Rust官网:

8dccd696-9536-11ed-bfe3-dac502259ad0.png

详细文档可以通过rustup doc在线阅读,也可以直接在浏览器上进入官网阅读。

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Google
    +关注

    关注

    5

    文章

    1801

    浏览量

    60272
  • 编译器
    +关注

    关注

    1

    文章

    1669

    浏览量

    51083
  • Rust
    +关注

    关注

    1

    文章

    240

    浏览量

    7481

原文标题:Google为Chromium引入Rust?

文章出处:【微信号:程序喵大人,微信公众号:程序喵大人】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    2025开放原子开发者大会旋武开源社区Rust分论坛成功举办

    11月22日,2025开放原子开发者大会——旋武开源社区Rust分论坛在北京顺利召开。论坛以“共建中国Rust生态”核心主题,汇聚京东、华为、vivo、阿里、毛豆教育、DORA社区及南京大学等企业与学术机构技术专家,及众多
    的头像 发表于 11-27 14:55 336次阅读

    nordic NRF54蓝牙设备在Google Pixel 10上“听诊”蓝牙信道示例

    今年早些时候发布的Android 16系统首次引入了支持蓝牙®信道探测的公共API,实现了智能手机的精准测距功能。然而直到近期,市面上仍未出现支持蓝牙6.0及信道探测技术的手机硬件。这一局面在
    发表于 11-26 17:44

    2025开放原子开发者大会旋武社区Rust分论坛即将启幕

    在数字化转型持续深化、系统安全与性能需求愈发迫切的当下,Rust凭借强大的内存安全、高并发性能和卓越的开发者体验,正成为重塑软件开发疆界的关键力量,更是构建下一代可靠高效基础设施的核心选择。11月
    的头像 发表于 11-13 10:00 353次阅读

    RusT-Thread:基于Rust面向资源受限嵌入式设备的操作系统的实践 | 技术集结

    RT-Thread基础,使用Rust语言重构其内核,形成了全新的RusT-Thread系统。系统采用模块化架构,涵盖内核服务、进程调度、内存管理、线程通信与时钟控制等核心
    的头像 发表于 11-07 17:37 6477次阅读
    <b class='flag-5'>RusT</b>-Thread:基于<b class='flag-5'>Rust</b>面向资源受限嵌入式设备的操作系统的实践 | 技术集结

    谷歌查找我的设备配件(Google Find My Device Accessory)详解和应用

    谷歌查找我的设备配件(Google Find My Device Accessory)介绍 谷歌查找我的设备配件是与谷歌 “查找我的设备” 应用程序配合使用的配件,旨在帮助用户更方便地追踪和定位个人
    发表于 08-31 21:10

    RT-Thread 遇上 Rust:安全内核 RusT-Thread 的诞生

    大家好,我们是中国科学技术大学操作系统原理与设计(H)课oooooS小组。这个项目是我们的课程大作业:参考RT-Thread架构,使用Rust搭建一个原生的嵌入式操作系统内核。初识Rust是因为xk
    的头像 发表于 08-02 11:03 3210次阅读
    RT-Thread 遇上 <b class='flag-5'>Rust</b>:安全内核 <b class='flag-5'>RusT</b>-Thread 的诞生

    Google Fast Pair服务简介

    Google Fast Pair 是一项利用低功耗蓝牙(Bluetooth LE)技术,实现设备间快速安全配对及提供多种服务的协议。其主要功能包括: 设备处于配对模式时,显示半页通知,便于用户进行
    发表于 06-29 19:28

    请问OpenVINO™ 是否支持 Rust 绑定?

    无法确定OpenVINO™是否支持 Rust 绑定。
    发表于 06-25 07:45

    从i.MX6开始,chromium的音频驱动程序发生内核崩溃怎么解决?

    运行 chromium 播放包含音频的视频时,音频驱动程序发生内核崩溃。 Chromium 在启动时启动,带有 systemd 的 “After=weston.service” 选项。 在
    发表于 04-09 07:41

    如何开发一款Google Find My Tag?

    My 网络的配件(如 AirTag)。通过结合 GPS、蓝牙和众包网络,Find My 提供了高精度的定位功能,同时保护用户隐私 Google Find My网络同样也是由数亿台运行较新版本
    发表于 03-05 17:39

    vivo打造最具影响力Rust赛事,点亮基础软件事业的“蓝河时代”

    在蓝河操作系统创新赛,看见中国Rust生态的汇聚与发展
    的头像 发表于 02-27 15:08 2170次阅读
    vivo打造最具影响力<b class='flag-5'>Rust</b>赛事,点亮基础软件事业的“蓝河时代”

    JavaScript与Rust和WebAssembly集成

    偶然一次机会,接触了Rust的代码。当时想给团队小伙伴做演示,发现自己并不能在移动端按照文档生成演示demo。我就想,要是Rust代码能转化成JavaScript就好了。结果一搜,还真有。
    的头像 发表于 01-24 15:43 818次阅读
    JavaScript与<b class='flag-5'>Rust</b>和WebAssembly集成

    如何利用Google Play实现出海应用增长

    本文内容来自于活动演讲内容的整理和总结,演讲人分别: Google Play 应用增长顾问 Tammy Taw,Google Play 商业拓展经理 Christina Li,Google Play
    的头像 发表于 01-22 11:52 1104次阅读
    如何利用<b class='flag-5'>Google</b> Play实现出海应用增长

    Google Play如何帮助您的应用变现

    本文内容来自于活动演讲内容的整理和总结,演讲人分别为: Google Play 资深产品经理 Kalpa Raj 和 Google Play 商业拓展经理 Maya Ma   在 Google
    的头像 发表于 01-21 11:21 1103次阅读
    <b class='flag-5'>Google</b> Play如何帮助您的应用变现

    E2000 Speedometer测试浏览器性能

    Google的开源项目,开发者们可以共同去改进它,然后Google会收集改进后的Chromium并发布改进后安装包。Chrome是Google开发&发布版本,
    发表于 01-10 21:33