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

    文章

    1791

    浏览量

    59249
  • 编译器
    +关注

    关注

    1

    文章

    1663

    浏览量

    50448
  • Rust
    +关注

    关注

    1

    文章

    237

    浏览量

    7189

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

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

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

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

    大家好,我们是中国科学技术大学操作系统原理与设计(H)课oooooS小组。这个项目是我们的课程大作业:参考RT-Thread架构,使用Rust搭建一个原生的嵌入式操作系统内核。初识Rust是因为xk
    的头像 发表于 08-02 11:03 ?2352次阅读
    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

    RK3568开发板驱动指南GPIO子系统GPIO子系统API函数的引入

    RK3568开发板驱动指南GPIO子系统GPIO子系统API函数的引入
    的头像 发表于 05-29 14:05 ?519次阅读
    迅<b class='flag-5'>为</b>RK3568开发板驱动指南GPIO子系统GPIO子系统API函数的<b class='flag-5'>引入</b>

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

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

    基于SEGGER的Ozone调试器和J-Trace工具跟踪Ferrocene的Rust应用

    2025年3月,SEGGER和Ferrous Systems合作,确保使用Ferrous Systems的Ferrocene工具链编译的Rust应用程序可以通过SEGGER的J-Trace工具实时下载分析。
    的头像 发表于 03-14 11:27 ?661次阅读

    如何开发一款Google Find My Tag?

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

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

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

    JavaScript与Rust和WebAssembly集成

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

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

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

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

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

    E2000 Speedometer测试浏览器性能

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

    霍尼韦尔携手谷歌云,在工业领域引入生成式AI Gemini

    10月21日新闻,霍尼韦尔(Honeywell)携手谷歌云(Google Cloud)达成合作,旨在将生成式人工智能Gemini引入工业领域,共同推动工业智能化进程。
    的头像 发表于 10-23 14:20 ?796次阅读

    Google AI技术助力中国品牌出海增长

    人工智能的技术创新与突破正在给各行各业带来全新的变革与机遇。在数字营销领域,AI 也整个营销流程开启了全新的可能。从全新的沉浸式广告体验到效果出色的广告素材,Google AI 正在助力广告创意
    的头像 发表于 10-16 11:08 ?943次阅读

    如何用Rust编写一个ChatGPT桌面应用(保姆级教程)

    用IDEA开发的java仔) 安装 Rust 语言工具链:首先,请确保你已安装了 Rust 编程语言工具链,包括 Rust 编译器 (rustc) 和包管理工具 (cargo)。可以通过访问
    的头像 发表于 09-25 11:19 ?730次阅读
    如何用<b class='flag-5'>Rust</b>编写一个ChatGPT桌面应用(保姆级教程)