一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Rust是什么?有哪些特性

jf_wN0SrCdH ? 來(lái)源:浮之靜 ? 作者:lencx ? 2022-10-31 14:39 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Rust 是什么?

A language empowering everyone to build reliable and efficient software.

一種使每個(gè)人都能建立可靠和高效的軟件的語(yǔ)言(系統(tǒng)級(jí)編程語(yǔ)言)。

特性

高性能:速度極快且內(nèi)存效率極高,沒(méi)有運(yùn)行時(shí)或垃圾收集器,它可以為性能關(guān)鍵的服務(wù)提供動(dòng)力,在嵌入式設(shè)備上運(yùn)行,并容易與其他語(yǔ)言集成。

可靠性:豐富的類型系統(tǒng)和所有權(quán)模型保證了內(nèi)存安全和線程安全(能夠在編譯時(shí)消除許多類錯(cuò)誤)。

生產(chǎn)力:Rust 有很棒的文檔、一個(gè)帶有友好錯(cuò)誤信息提示的編譯器和一流的工具(一個(gè)集成的包管理器(cargo)和構(gòu)建工具、具有自動(dòng)完成和類型檢查的智能多編輯器支持、一個(gè)自動(dòng)格式化程序等等)。

Wiki: 在計(jì)算機(jī)科學(xué)中,垃圾回收(Garbage Collection,簡(jiǎn)稱 GC)是指一種自動(dòng)的存儲(chǔ)器管理[8]機(jī)制。當(dāng)某個(gè)程序占用的一部分內(nèi)存空間不再被這個(gè)程序訪問(wèn)時(shí),這個(gè)程序會(huì)借助垃圾回收算法操作系統(tǒng)歸還這部分內(nèi)存空間。垃圾回收器可以減輕程序員的負(fù)擔(dān),也減少程序中的錯(cuò)誤。垃圾回收最早起源于 LISP語(yǔ)言。Java、C#、Go和 D 語(yǔ)言都支持垃圾回收器。

生態(tài)

Command Line - 利用 Rust 強(qiáng)大的生態(tài)系統(tǒng)快速開(kāi)發(fā)出 CLI 工具。Rust 可以幫助你可靠地維護(hù)應(yīng)用程序,并輕松地發(fā)布它。

WebAssembly- 使用 Rust 來(lái)增強(qiáng)你的 JavaScript,每個(gè) rust crate 都對(duì)應(yīng)一個(gè) js 模塊,可以發(fā)布到 npm,用前端打包工具(webpack、vite、rollup等)進(jìn)行捆綁。

Networking - 可預(yù)測(cè)的性能。小巧的資源占用。穩(wěn)如磐石的可靠性。Rust是網(wǎng)絡(luò)服務(wù)的最佳選擇(構(gòu)建高性能服務(wù)器)。

Embedded- 針對(duì)低資源的設(shè)備?需要低層次的控制而不放棄高層次的便利?Rust可以滿足你的要求(嵌入式開(kāi)發(fā),內(nèi)核開(kāi)發(fā)等)。

Rust 助力前端

Rust 因其出色的表現(xiàn),連續(xù) 7 年在 StackOverflow 調(diào)查中成為最受歡迎的語(yǔ)言(Stack Overflow Developer Survey 2022)。優(yōu)秀的特性自然也受到了前端的青睞,很多大神開(kāi)始基于 Rust 重寫(xiě)前端生態(tài)。

e6c12062-56da-11ed-a3b6-dac502259ad0.png

個(gè)人理解,不準(zhǔn)確的地方歡迎討論:Rust 之所以優(yōu)秀是因?yàn)樗梃b了大量編程語(yǔ)言的優(yōu)秀特性,通過(guò)其自身的類型系統(tǒng),生命周期,所有權(quán)等概念將其統(tǒng)一起來(lái),成為其安全可靠,高性能的重要保證(構(gòu)建速度暫時(shí)不吐槽,畢竟團(tuán)隊(duì)也在不斷努力提速中)。在編譯階段會(huì)對(duì)代碼進(jìn)行檢查,拋出友好的錯(cuò)誤,并給出大量指導(dǎo)性修改建議(很多時(shí)候都是編譯器在教我寫(xiě)代碼),這在別的語(yǔ)言似乎很難看到。

學(xué)習(xí)教程

Awesome Rust- Rust 代碼和資源的精選列表

Rust語(yǔ)言圣經(jīng) (Rust Course)- 對(duì)標(biāo)官方文檔,對(duì) Rust 語(yǔ)言進(jìn)行全面且深入的講解,輔以生動(dòng)的示例和習(xí)題,語(yǔ)言詼諧幽默,值得一看

Rust語(yǔ)言中文社區(qū) - 每天會(huì)發(fā)布大量和 Rust 生態(tài)相關(guān)的文章,適合碎片化時(shí)間瀏覽

Node.js ? Rust

24 days from node.js to Rust- 24 篇關(guān)于 Rust 入門的系列文章,用 Rust 重寫(xiě)常見(jiàn)的 JavaScript 任務(wù)(有大量對(duì)比示例代碼)

Rust for Node developers- 為 Node.js 開(kāi)發(fā)人員介紹 Rust 編程語(yǔ)言

Rust for JavaScript peeps - 了解 JS,想嘗試 Rust,但不知道從哪里開(kāi)始?這個(gè)給你!

...

生態(tài)

Turbo - Turbo 是用 Rust 編寫(xiě)的一個(gè)為 JavaScript 和 TypeScript 優(yōu)化的增量捆綁器和構(gòu)建系統(tǒng)(基于 SWC)

SWC (Speedy Web Compiler) - 是一個(gè)用 Rust 編寫(xiě)的超快速 TypeScript / JavaScript 編譯器

Deno - JavaScript 和 TypeScript 的現(xiàn)代運(yùn)行時(shí)

Rome- 是用于 JavaScript、TypeScript、JSON、HTML、Markdown 和 CSS 的格式化程序、linter、捆綁程序等,用 Rust 編寫(xiě)

Boa- 一個(gè)用 Rust 編寫(xiě)的實(shí)驗(yàn)性 Javascript 詞法分析器、解析器和解釋器。目前,它支持部分語(yǔ)言

Parcel- Web 的零配置構(gòu)建工具

Lightning CSS - 一個(gè)非??焖俚?CSS 解析器、轉(zhuǎn)換器、捆綁器和壓縮器

Lint

deno_lint - 用 Rust 編寫(xiě)的 JavaScript 和 TypeScript 的超快 linter

RSlint- 一個(gè)快速、可定制且易于使用的 JavaScript 和 TypeScript linter(處于早期開(kāi)發(fā)階段,不應(yīng)在生產(chǎn)中使用)

nvm - Node.js 版本管理

fnm - 快速簡(jiǎn)單的 Node.js 版本管理器,基于 Rust

Volta- JS Toolchains as Code

wasm-pack- 將 Rust 生成 WebAssembly 的一站式工具(生成可發(fā)布的 npm 包)

rsw - wasm-pack 的增強(qiáng)版 CLI,支持同時(shí) watch,build,link 多個(gè) rust crate

vite-plugin-rsw- 基于 Vite 的 wasm-pack 插件(基于 rsw 實(shí)現(xiàn))

Tauri - 構(gòu)建跨平臺(tái)桌面應(yīng)用,目前支持 macOS,Windows,Linux,未來(lái)也會(huì)支持 iOS/iPadOS 和 Android。后端使用 Rust,前端使用 HTML,CSS 和 JS(為 Electro的替代品)

Tauri 系列 - 中文教程,從零到一搭建一個(gè) Tauri 項(xiàng)目

Yew- 是一個(gè)現(xiàn)代 Rust 框架,用于使用 WebAssembly 創(chuàng)建多線程前端 Web 應(yīng)用程序,以下是 Yew 的替代品:

Percy - 用于使用 Rust + WebAssembly 構(gòu)建同構(gòu) Web 應(yīng)用程序的模塊化工具包

Seed - 用于創(chuàng)建 Web 應(yīng)用程序的 Rust 框架

Perseus- 一個(gè)狀態(tài)驅(qū)動(dòng)的 Rust 網(wǎng)絡(luò)開(kāi)發(fā)框架,完全支持服務(wù)器端渲染和靜態(tài)生成

Sycamore- 用于在 Rust 和 WebAssembly 中創(chuàng)建響應(yīng)式 Web 應(yīng)用程序的庫(kù)

dprint-plugin-typescript[53] - TypeScript 和 JavaScript 代碼格式化插件。

moon - 用 Rust 編寫(xiě)的用于 Web 生態(tài)系統(tǒng)的構(gòu)建系統(tǒng)和 repo 管理工具

Rustle - 用 Rust 重寫(xiě)的 Svelte 編譯器

typed-html - Type checked JSX for Rust

Rolldown - 100% API 兼容的 Rust 版 Rollup,實(shí)現(xiàn)正在進(jìn)行中(似乎停止更新)

Relay- Relay 編譯器使用 Rust 重寫(xiě)

...







審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 編譯器
    +關(guān)注

    關(guān)注

    1

    文章

    1661

    瀏覽量

    50137
  • CLI
    CLI
    +關(guān)注

    關(guān)注

    1

    文章

    80

    瀏覽量

    8787
  • rust語(yǔ)言
    +關(guān)注

    關(guān)注

    0

    文章

    57

    瀏覽量

    3137

原文標(biāo)題:Rust 在前端

文章出處:【微信號(hào):Rust語(yǔ)言中文社區(qū),微信公眾號(hào):Rust語(yǔ)言中文社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    未來(lái)嵌入式系統(tǒng)的黃金搭檔 MCX N947遇上Rust

    基于 Rust 的安全性和性能引入了 Rust。 Rust 很多優(yōu)勢(shì),內(nèi)存安全、并發(fā)安全、生態(tài)系統(tǒng)、包管理與構(gòu)建管理,同時(shí)也有與 C/C++ 相同等級(jí)的性能。
    的頭像 發(fā)表于 07-25 09:14 ?1775次閱讀
    未來(lái)嵌入式系統(tǒng)的黃金搭檔 MCX N947遇上<b class='flag-5'>Rust</b>

    Rust的 match 語(yǔ)句用法

    Rust 是一門現(xiàn)代化的系統(tǒng)編程語(yǔ)言,它擁有高性能、內(nèi)存安全和并發(fā)性等特點(diǎn)。Rust 的語(yǔ)法設(shè)計(jì)非常優(yōu)秀,其中 match 語(yǔ)句是一種非常強(qiáng)大的語(yǔ)言特性。match 語(yǔ)句可以讓我們根據(jù)不同的匹配模式
    的頭像 發(fā)表于 09-19 17:08 ?1219次閱讀

    請(qǐng)問(wèn)OpenVINO? 是否支持 Rust 綁定?

    無(wú)法確定OpenVINO?是否支持 Rust 綁定。
    發(fā)表于 06-25 07:45

    使用rust開(kāi)發(fā)stm32系列教程

    本文為使用 rust 開(kāi)發(fā) stm32 系列教程前言。Why RustRust 特性就不用多介紹了,個(gè)編譯器管著有時(shí)候比用C到處浪把自己整沒(méi)了好。ST官方逐漸停止對(duì)C固件庫(kù)的更新,使用MX感覺(jué)沒(méi)
    發(fā)表于 08-20 07:18

    怎樣去使用Rust進(jìn)行嵌入式編程呢

    使用Rust進(jìn)行嵌入式編程Use Rust for embedded development篇首語(yǔ):Rust的高性能、可靠性和生產(chǎn)力使其適合于嵌入式系統(tǒng)。在過(guò)去的幾年里,Rust在程序
    發(fā)表于 12-22 07:20

    Rust代碼中加載靜態(tài)庫(kù)時(shí),出現(xiàn)錯(cuò)誤 ` rust-lld: error: undefined symbol: malloc `怎么解決?

    “ [i]malloc ”、“ [i]exit ”。我驗(yàn)證了使用 ` [i]nm ` 命令。 問(wèn)題是我打算使用 ffi 在 rust 中使用這個(gè)靜態(tài)庫(kù)。當(dāng)我嘗試在我的 Rust 代碼中加載靜態(tài)庫(kù)
    發(fā)表于 06-09 08:44

    Rust 1.15 引入自定義derive特性什么做用

    Rust核心團(tuán)隊(duì)發(fā)布了Rust 1.15穩(wěn)定版,新增了備受期待的自定義derive特性,讓代碼生成工具(如Serde和Diesel)能最大效能地工作。
    發(fā)表于 05-17 18:05 ?0次下載
    <b class='flag-5'>Rust</b> 1.15 引入自定義derive<b class='flag-5'>特性</b><b class='flag-5'>有</b>什么做用

    RUST的真實(shí)驅(qū)動(dòng)案例

    我們無(wú)法確定RUST在內(nèi)核的最終趨勢(shì),多少人愿意遷移,但是至少Linus愿意試水。 Wedson Almeida Filho針對(duì)ARM PL061 GPIO驅(qū)動(dòng),翻譯了一個(gè)RUST版本,這樣也算一
    的頭像 發(fā)表于 10-12 15:59 ?2449次閱讀
    <b class='flag-5'>RUST</b>的真實(shí)驅(qū)動(dòng)案例

    rust-analyzer Rust編譯器前端實(shí)現(xiàn)

    ./oschina_soft/rust-analyzer.zip
    發(fā)表于 05-19 09:23 ?2次下載
    <b class='flag-5'>rust</b>-analyzer <b class='flag-5'>Rust</b>編譯器前端實(shí)現(xiàn)

    Rust中GAT和高階類型

    Rust在類型系統(tǒng)級(jí)別上與Haskell,Scala許多相似之處。
    的頭像 發(fā)表于 11-07 10:21 ?1534次閱讀

    Chromium正式開(kāi)始支持Rust

    ? Chromium 正式開(kāi)始支持 Rust 目前的支持只是第一階段,在C++代碼中使用Rust寫(xiě)的第三方庫(kù)(編譯成.so)。估計(jì)明年Chromium的二進(jìn)制發(fā)行文件中會(huì)包含rust寫(xiě)的庫(kù)。更廣
    的頭像 發(fā)表于 01-14 10:04 ?1190次閱讀

    rust語(yǔ)言基礎(chǔ)學(xué)習(xí): Default trait

    Default trait 顧名思義是默認(rèn)值,即Rust為特定類型實(shí)現(xiàn) Default 特性時(shí),可以為該類型賦予了可選的默認(rèn)值。
    的頭像 發(fā)表于 05-22 16:16 ?1531次閱讀

    rust語(yǔ)言基礎(chǔ)學(xué)習(xí): rust中的錯(cuò)誤處理

    錯(cuò)誤是軟件中不可避免的,所以 Rust 一些處理出錯(cuò)情況的特性。在許多情況下,Rust 要求你承認(rèn)錯(cuò)誤的可能性,并在你的代碼編譯前采取一些行動(dòng)。
    的頭像 發(fā)表于 05-22 16:28 ?2502次閱讀

    Rust的內(nèi)部工作原理

    Rust到匯編:了解 Rust 的內(nèi)部工作原理 非常好的Rust系列文章,通過(guò)生成的匯編代碼,讓你了解很多Rust內(nèi)部的工作機(jī)制。例如文章
    的頭像 發(fā)表于 06-14 10:34 ?1014次閱讀
    <b class='flag-5'>Rust</b>的內(nèi)部工作原理

    從Rustup出發(fā)看Rust編譯生態(tài)

    從Rustup出發(fā)看Rust編譯生態(tài) 1. Rust和LLVM的關(guān)系是怎樣的? 2. Rustup中targets是什么,為什么可以安裝多個(gè)? 3. Rust在windows上為什么需要安裝Visual studio?
    的頭像 發(fā)表于 01-02 11:00 ?818次閱讀