日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

Rust 正在全面入侵前端

來源: 責編: 時間:2024-05-22 17:12:13 240觀看
導讀過年期間我沒怎么發文章,但是我也沒閑著。在這個空閑時間,把 rust 基礎以及個別生態技術方案扎扎實實的,系統的學習了一下。學習他的初衷是因為 rust 可以支持鴻蒙應用的原生級別的開發,為進階資深級別的鴻蒙開發者做技術

QNm28資訊網——每日最新資訊28at.com

過年期間我沒怎么發文章,但是我也沒閑著。在這個空閑時間,把 rust 基礎以及個別生態技術方案扎扎實實的,系統的學習了一下。學習他的初衷是因為 rust 可以支持鴻蒙應用的原生級別的開發,為進階資深級別的鴻蒙開發者做技術儲備。QNm28資訊網——每日最新資訊28at.com

可這不學不知道,一學嚇一跳。這才發現 rust 生態,正在以一種銳不可當的氣勢,全方位、無死角的入侵前端開發的方方面面。最關鍵的是,由于有后發優勢,這些技術方案往往都比已有的前端方案更加先進、更加科學、性能更高...QNm28資訊網——每日最新資訊28at.com

一、Farm

QNm28資訊網——每日最新資訊28at.com

Farm 是一個使用 rust 編寫的極速構建引擎。在它的宣傳文檔中,認為自己比 Webpack 快 10 倍以上,比 vite 快 5 倍。很顯然,這是一款想要精準狙擊 vite 的前端項目構建工具。QNm28資訊網——每日最新資訊28at.com

由于 vite 對于項目內的模塊采取的是請求時編譯的策略,并且對源碼不 bundle,因此,根據字節架構團隊內部的經驗,當項目規模巨大的時候,vite 的首次頁面加載時間可能長達數十秒「頁面首次加載時,加載了大量的模塊」,刷新時極其卡頓,并且由于巨大的請求量可能導致瀏覽器崩潰,影響開發體驗。QNm28資訊網——每日最新資訊28at.com

而且 vite 在開發環境使用 esbuild 進行預編譯,在生成環境使用 bundler rollup,處理方式不一樣,偶爾可能會出現開發環境與線上行為不一致的情況,一旦出現不一致,則意味著巨大的排查成本。QNm28資訊網——每日最新資訊28at.com

針對 vite 的痛點,Farm 使用 rust 重新實現了對 css/ts/js/sass 的編譯能力,能實現毫秒級啟動項目,對于大部分情況,能講 hmr 時間控制在 10ms 以內。QNm28資訊網——每日最新資訊28at.com

二、Turbopack

相比于 Farm,Turbopack 則顯得更加和值得信賴,并且由于 next.js 的加持,它也得到了更多的關注。QNm28資訊網——每日最新資訊28at.com

QNm28資訊網——每日最新資訊28at.com

Turbopack 同樣是一款基于 rust 構建的前端項目構建工具。Turbopack 建立在新的增量架構上,在打包時只關注開發所需的最小資源,因此不管是啟動速度還是 hmr 速度,都有遠超 vite 的性能。QNm28資訊網——每日最新資訊28at.com

在具有 3000 個模塊的應用上,Turbopack 只需要 1.8s,而 Vite 需要 11.4s。QNm28資訊網——每日最新資訊28at.com

QNm28資訊網——每日最新資訊28at.com

Turbopack 是由 Vercel 團隊提供的,專注于提高 Next.js 速度的打包工具。并且未來的目標是取代 webpack,成為新一代的前端打包工具。因此 Next.js 的成熟與大熱,也會帶動 Turbopack 成為更值得信賴的打包工具。QNm28資訊網——每日最新資訊28at.com

三、Rspack

Rspack 是一款由字節團隊提供的項目打包工具。和 Turbopack 一樣,它也充分發揮了 Rust 語言的性能優勢,在打包速度上都有顯著的提升。QNm28資訊網——每日最新資訊28at.com

但是與 Turbopack 不同的是,Rspack 選擇了優先對 webpack 生態兼容的路線。一方面,這些兼容可能會帶來一定的性能開銷,但是在實際的業務落地中,這寫性能開銷是可以接受的。另外一方面,這些兼容也使得 Rspack 可以更好的與上層框架和生態進行集成,能夠實現業務的漸進式遷移。QNm28資訊網——每日最新資訊28at.com

目前 Rspack 的開發團隊也在積極的招聘,很顯然,他們對于未來的發展有非常明確的規劃。QNm28資訊網——每日最新資訊28at.com

QNm28資訊網——每日最新資訊28at.com

四、Vite 正在用 rust 重構

Vite 作為新一代高性能打包工具,剛出場時確實驚艷了眾人。但是架不住各種瘋狂的卷王使用 rust 彎道超車啊。Vite 反而成為了背景板,被按在地上瘋狂摩擦。因此為了能夠不在性能上被壓制太多,Vite 團隊正在基于 rust 研發各種替代方案以解決 Vite 目前的痛點。QNm28資訊網——每日最新資訊28at.com

五、Rolldown

Vite 團隊正在研發 Rolldown 并且已經開源,它是使用 rust 開發的 Rollup 的替代品。它的重點將放在本地級別的性能上,同時保持與 Rollup 的兼容性。最終目標是能悄悄在 Vite 中切換到 Rolldown,并且 Vite 的使用者產生最小的影響。QNm28資訊網——每日最新資訊28at.com

不過目前來看,Vite 要實現 rust 重構這個目標壓力很大。因此 Vite 團隊規劃了四個階段來推動這個事情。QNm28資訊網——每日最新資訊28at.com

  • 替換 esbuild。
  • 替換 Rollup。
  • 使用 rust 實現常用需求的內置轉化,如編譯 ts、JSX 等。
  • 使用 rust 完全重構 Vite。

六、Leptos

Leptos 是一款基于 rust 的類 React/Solid 框架。也是基于 signal 實現的細粒度級別的響應式更新。QNm28資訊網——每日最新資訊28at.com

基礎語法如下:QNm28資訊網——每日最新資訊28at.com

#[component]fn App() -> impl IntoView {  let (count, set_count) = create_signal(0);  view! {    <button       on:click=move |_| set_count.update(|n| *n += 1)    >      "click me"    </button>    <p>      <strong>"Reactive"</strong>      {count}    </p>  }}

在語法層面與 Solid 非常相似。不過在語法細節設計上,比 Solid 設計得更加的合理。在語義上有更符合直覺的思考。這也就意味著,Leptos 基于 rust 的編譯做得更好。QNm28資訊網——每日最新資訊28at.com

#[component]fn ProgressBar(  #[prop(default = 100)]  max: u16,  #[prop(into)]  progress: Signal<i32>) -> impl IntoView {  view! {    <progress max=max value=progress />  }}

盡管 Leptos 設計得比較先進,性能也非常強悍,但由于是基于 rust 編寫,上手成本非常高,因此在推廣上可能會遇到大量的困境。不過這依然擋不住許多程序員對他的熱情。QNm28資訊網——每日最新資訊28at.com

我也是非常喜歡 Leptos 的開發者之一,并且把它作為熟悉 rust 語法學習的主要項目之一,因為這是我們前端更熟悉的領域,因此前端開發通過它掌握 rust 能達到事半功倍的效果。QNm28資訊網——每日最新資訊28at.com

當然,該工具還有很多潛力我還沒徹底挖掘到,比如官方文檔里宣稱自己是 full Stack 的框架,但是由于我還沒有消化完,所以暫時需要進一步學習才能了解。QNm28資訊網——每日最新資訊28at.com

七、dioxus

QNm28資訊網——每日最新資訊28at.com

dioxus 是一個野心更大的跨平臺客戶端開發框架,與此同時,它又能做到全棧開發。它在實現原理與語法設計上與 Leptos 有一定的相似之處,但是在 UI 語法的表現上又完全不同。QNm28資訊網——每日最新資訊28at.com

一個簡單的例子可以看出來。QNm28資訊網——每日最新資訊28at.com

fn app() -> Element {  let mut count = use_signal(|| 0);  rsx! {    h1 { "High-Five counter: {count}" }    button { onclick: move |_| count += 1, "Up high!" }    button { onclick: move |_| count -= 1, "Down low!" }  }}

從這個語法設計就可看出,它志在一統江湖。試圖將 web 開發,移動端 App 開發,桌面端 App 開發等場景一網打盡。QNm28資訊網——每日最新資訊28at.com

QNm28資訊網——每日最新資訊28at.com

簡單實用下來的感受就是,該框架有過渡模仿 React 的嫌疑,以致于熟悉 React 的我學習它比 Leptos 更加的得心應手。QNm28資訊網——每日最新資訊28at.com

八、Tauri

QNm28資訊網——每日最新資訊28at.com

Tauri 是一款 Electron 的替代方案。QNm28資訊網——每日最新資訊28at.com

Electron 主要有兩個痛點,一是包體積太大,二是內存消耗嚴重。因此它的替代方案層出不窮。與前面介紹的幾款 rust 框架不同,Tauri 的發展已經趨于成熟,并且已經在許多商用項目中得以應用。QNm28資訊網——每日最新資訊28at.com

最最最重要的是,我已經開始讓我的學生學習它,并作為一個核心項目亮點作為自己的競爭力來應對越來越卷的面試場景。并且取得的效果還不錯。從最近這半年的面試的結果來看,許多國內的公司已經開始重視 Tauri 帶來的利好。QNm28資訊網——每日最新資訊28at.com

由于 rust 放棄了體積巨大的 Chromiun 和 nodejs,同樣的項目,打包體積可以從 electron 的 60M減少到 4M,內存消耗也能從 500M 減少到 150M 左右。QNm28資訊網——每日最新資訊28at.com

九、Servo

QNm28資訊網——每日最新資訊28at.com

這是一款基于 rust 開發,并且志在取代 chrome 的瀏覽器項目。該項目是早期 Mozilla 開發的實驗性項目,由于資金有限,中間擱置了很長一段時間,現在眼看著 rust 大火又準備加足馬力開始搞,并且近期版本迭代非常快,此時的 Servo 已經由 Linux 基金會接管。QNm28資訊網——每日最新資訊28at.com

Servo 試圖創造一個大規模并行計算的頁面渲染模式,來加速渲染、布局、HTML 解析、圖像解碼等,在 Arm 架構上的測試顯示,Servo 的性能顯著優于 Chromium。QNm28資訊網——每日最新資訊28at.com

然后我就去下載這個瀏覽器來玩了一下,結果發現這玩意兒還是一個簡陋版本。基本的 UI 功能還沒有做出來。并且許多頁面的布局還存在亂序的問題。QNm28資訊網——每日最新資訊28at.com

只能說暫時值得關注,有很大的發展潛力。用的話,可能還早。QNm28資訊網——每日最新資訊28at.com

十、Deno

Deno 是一款基于 rust 構建的 JavaScript 運行時。和 node.js 一樣出自于同一個大佬之手。Deno 的最新版本也是基于 rust 開發。QNm28資訊網——每日最新資訊28at.com

對我個人而言,Deno 最大的魅力在于直接原生支持 TypeScript,并且支持了 JSX/TSX。所以我非常看好 Deno 的后續發展,它正在越來越好,雖然現在生態還不足以于 node 抗衡。QNm28資訊網——每日最新資訊28at.com

十一、總結

很明顯可以看出,rust 正在入侵前端的方方面面,在有的方面雖不夠成熟但已表現出潛力,在某些方面卻已經確定了明確的優勢。QNm28資訊網——每日最新資訊28at.com

我認為前端開發再也不能忽視 rust 的存在了。由于同時具備超高的性能于安全性,rust 在各個領域「操作系統層面、AI、游戲開發、服務端、跨端方案、高性能 web 應用...」都已經被高度認可,社區活躍度非常高,生態發展非常迅猛。QNm28資訊網——每日最新資訊28at.com

因此在去年年底到現在,我一直在投入 rust 的學習中,整體感受下來就是,從一個前端開發的角度切入去學習 rust,上手難度還是比較低的,大概花一天時間就能學完所有基礎語法,但是需要我們對內存有非常準確的理解,如果你對內存一頭霧水,可能 rust 會很難學習。QNm28資訊網——每日最新資訊28at.com

然后我們需要花更多的時間去學習 rust 的開發思維與生態,對于前端開發來說,Leptos 是一個不錯的學習練手項目。QNm28資訊網——每日最新資訊28at.com

本文鏈接:http://m.www897cc.com/showinfo-26-90035-0.htmlRust 正在全面入侵前端

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 當調用一個 Python 對象時,背后都經歷了哪些過程?

下一篇: 前端跨平臺開發框架大盤點

標簽:
  • 熱門焦點
  • Find N3入網:最高支持16+1TB

    OPPO將于近期登場的Find N3折疊屏目前已經正式入網,型號為PHN110。本次Find N3在外觀方面相比前兩代有很大的變化,不再是小號的橫向折疊屏,而是跟別的廠商一樣采用了較為常見的
  • vivo TWS Air開箱體驗:真輕 臻好聽

    在vivo S15系列新機的發布會上,vivo的最新款真無線藍牙耳機vivo TWS Air也一同發布,本次就這款耳機新品給大家帶來一個簡單的分享。外包裝盒上,vivo TWS Air保持了vivo自家產
  • 一篇聊聊Go錯誤封裝機制

    %w 是用于錯誤包裝(Error Wrapping)的格式化動詞。它是用于 fmt.Errorf 和 fmt.Sprintf 函數中的一個特殊格式化動詞,用于將一個錯誤(或其他可打印的值)包裝在一個新的錯誤中。使
  • 每天一道面試題-CPU偽共享

    前言:了不起:又到了每天一到面試題的時候了!學弟,最近學習的怎么樣啊 了不起學弟:最近學習的還不錯,每天都在學習,每天都在進步! 了不起:那你最近學習的什么呢? 了不起學弟:最近在學習C
  • 騰訊VS網易,最卷游戲暑期檔,誰能笑到最后?

    作者:無銹缽來源:財經無忌7月16日晚,上海1862時尚藝術中心。伴隨著幻象的精準命中,碩大的熒幕之上,比分被定格在了14:12,被寄予厚望的EDG戰隊以絕對的優勢戰勝了BLG戰隊,拿下了總決
  • 華為HarmonyOS 4.0將于8月4日發布 或搭載AI大模型技術

    華為宣布HarmonyOS4.0將于8月4日正式發布。此前,華為已經針對開發者公布了HarmonyOS4.0,以便于開發者提前進行適配,也因此被曝光出了一些新系統的特性
  • iQOO 11S屏幕細節公布:首發三星2K E6全感屏 安卓最好的直屏手機

    日前iQOO手機官方宣布,新一代電競旗艦iQOO 11S將會在7月4日19:00正式與大家見面。隨著發布時間的日益臨近,官方關于該機的預熱也更加密集,截至目前已
  • OPPO K11評測:旗艦級IMX890加持 2000元檔最強影像手機

    【Techweb評測】中端機型用戶群體巨大,占了中國目前手機市場的大頭,一直以來都是各手機品牌的“必爭之地”,其中OPPO K系列機型一直以來都以高品質、
  • 親歷馬斯克血洗Twitter,硅谷的苦日子在后頭

    文/劉哲銘  編輯/李薇  馬斯克再次揮下裁員大刀。  美國時間11月14日,Twitter約4400名外包員工遭解雇,此次被解雇的員工的主要工作為內容審核等。此前,T
Top 日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不
一区二区三区|亚洲午夜| 国产日韩欧美视频| 男男成人高潮片免费网站| 免费在线成人av| 欧美日韩精品一区二区天天拍小说 | 欧美中文字幕在线| 另类天堂av| 欧美日韩一区二区三区四区在线观看| 国产精品亚洲不卡a| 韩国一区电影| 亚洲免费久久| 午夜久久资源| 欧美成人在线网站| 欧美午夜精品理论片a级大开眼界| 国产视频一区二区三区在线观看| 亚洲东热激情| 亚洲综合大片69999| 理论片一区二区在线| 国产精品啊啊啊| 伊人精品在线| 亚洲欧美视频在线观看视频| 麻豆精品在线播放| 国产精品成人免费| 在线观看的日韩av| 亚洲一区二区三区精品动漫| 久久综合久久综合这里只有精品| 欧美日韩综合视频| 在线国产精品播放| 亚洲欧美日韩精品综合在线观看| 美女免费视频一区| 国产伦精品一区二区三区在线观看 | 日韩视频第一页| 欧美一区二区三区在线观看| 欧美精品国产一区| 黄色成人av网| 亚洲综合99| 欧美激情一区二区在线| 国产一区二区观看| 中国成人黄色视屏| 欧美大片免费观看在线观看网站推荐| 国产日产欧美精品| 在线亚洲自拍| 欧美国产日产韩国视频| 国产综合亚洲精品一区二| 亚洲一线二线三线久久久| 欧美韩日一区二区| 好看的日韩视频| 亚洲欧美日韩一区| 欧美涩涩网站| 亚洲精品欧美一区二区三区| 久久精品国产69国产精品亚洲| 欧美视频在线免费看| 91久久综合| 久久成人免费日本黄色| 国产精品伦理| 一区二区三区欧美亚洲| 欧美成人蜜桃| 在线欧美三区| 毛片一区二区| 9国产精品视频| 另类图片国产| 国内精品福利| 久久成人亚洲| 国产欧美日韩伦理| 午夜亚洲福利在线老司机| 欧美色精品天天在线观看视频| 亚洲黄一区二区三区| 蜜臀91精品一区二区三区| 一区国产精品| 久久婷婷久久一区二区三区| 国产视频一区二区在线观看| 午夜精品影院在线观看| 国产精品入口| 亚洲一区二区欧美日韩| 国产精品mm| 亚洲视频大全| 国产精品va在线播放我和闺蜜| 99这里只有精品| 欧美日韩精品免费观看视频| 日韩网站在线观看| 欧美日韩国产精品专区| 日韩视频免费看| 欧美精品一区二区三区久久久竹菊 | 欧美一区免费视频| 国产精品亚洲综合色区韩国| 午夜精品影院| 国产日韩精品在线| 久久av在线看| 韩日精品在线| 美女国内精品自产拍在线播放| 亚洲高清av| 欧美激情一区二区三区不卡| 亚洲美女福利视频网站| 欧美日韩一级大片网址| 亚洲夜间福利| 国产亚洲精品久久久| 久久中文精品| 亚洲日本免费| 欧美日韩中文在线观看| 亚洲一区二区免费视频| 国产欧美日韩精品a在线观看| 欧美一二区视频| 激情婷婷久久| 欧美精品97| 亚洲自拍偷拍一区| 国内视频精品| 欧美激情性爽国产精品17p| 一区二区日本视频| 国产精品自拍在线| 久久蜜桃av一区精品变态类天堂| 亚洲国产一区二区三区在线播| 欧美日本国产一区| 亚洲欧美日韩网| 韩国精品在线观看| 欧美激情麻豆| 亚洲欧美成人在线| 在线电影欧美日韩一区二区私密| 欧美国产精品专区| 在线视频日韩| 国产亚洲欧美一区| 欧美国产一区二区| 亚洲欧美偷拍卡通变态| 永久域名在线精品| 欧美日韩免费一区二区三区| 欧美一级理论片| 亚洲片区在线| 国产精品视频yy9299一区| 久久久久久亚洲精品不卡4k岛国| 最新国产の精品合集bt伙计| 国产精品久久久对白| 久久青草欧美一区二区三区| 日韩视频不卡| 国产日韩欧美成人| 欧美精品福利在线| 欧美一区二区三区四区视频| 亚洲精品影视| 国产一区激情| 欧美日韩精品国产| 久久久久久夜| 亚洲午夜女主播在线直播| 韩国av一区二区三区在线观看| 欧美日韩不卡| 久久久久国产精品www| 一区二区三区免费观看| 精品成人国产| 国产精品毛片va一区二区三区| 久久只精品国产| 性欧美videos另类喷潮| 亚洲理伦电影| 一区二区三区在线不卡| 欧美性理论片在线观看片免费| 久久夜色精品一区| 午夜精品久久久久久久99热浪潮| 亚洲黄一区二区三区| 国产视频一区在线| 国产精品成人一区二区艾草| 亚洲精品乱码久久久久久蜜桃91| 国产精品一区免费视频| 欧美激情欧美激情在线五月| 久久久久久久网| 亚洲欧美第一页| 99国产麻豆精品| 亚洲激情欧美| 国内精品免费午夜毛片| 国产精品劲爆视频| 欧美激情一区在线观看| 久久久久久亚洲精品不卡4k岛国| 一区二区欧美国产| 亚洲国产婷婷香蕉久久久久久| 国产午夜亚洲精品不卡| 国产精品久久久久9999| 欧美屁股在线| 免费成人网www| 久久久999精品视频| 亚洲欧美综合国产精品一区| 一区二区三区四区五区视频| 亚洲欧洲精品一区| 在线成人h网| 韩曰欧美视频免费观看| 国产欧美在线观看| 国产精品嫩草影院av蜜臀| 欧美日韩色一区| 欧美另类videos死尸| 欧美成人自拍视频| 久久阴道视频| 久久网站免费| 久久久一区二区| 久久久久九九视频| 久久精品国产精品| 欧美一区二区精品在线| 亚洲欧美日韩中文播放| 亚洲免费视频成人| 亚洲一区区二区| 中国成人亚色综合网站| 一区二区精品国产| 99精品视频网| 99在线观看免费视频精品观看| 亚洲精品一区二区三区99| 最新中文字幕一区二区三区| 亚洲精品综合精品自拍| 一本色道久久| 亚洲一二三级电影| 亚洲在线第一页| 午夜精品剧场|