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

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

2023年WebAssembly 現狀

來源: 責編: 時間:2023-11-06 08:52:15 260觀看
導讀WebAssembly 2023的調查已經結束,結果揭曉……真的很吸引人!如果你想要簡短的總結,這里有一些亮點:Rust 和 JavaScript 的使用仍在繼續增加,但更值得注意的變化發生在下面—— Swift 和 Zig 的采納率都有了顯著的增長。與

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

WebAssembly 2023的調查已經結束,結果揭曉……真的很吸引人!8d628資訊網——每日最新資訊28at.com

如果你想要簡短的總結,這里有一些亮點:8d628資訊網——每日最新資訊28at.com

  • Rust  JavaScript 的使用仍在繼續增加,但更值得注意的變化發生在下面—— Swift  Zig 的采納率都有了顯著的增長。
  • 與此同時,當涉及開發者“渴望”使用哪種語言時,ZigKotlin C#的受歡迎程度超過了當前的使用情況。
  • WebAssembly 仍然主要用于web應用程序開發,但無服務器技術的使用仍在增長,而作為插件環境的 WebAssembly 的使用也在增加。
  • 線程、垃圾回收和相對新的組件模型提議是人們最感興趣的 WebAssembly 發展方向。
  • 至于 WASI,最受關注的是I/O提議(例如HTTP、文件系統)。
  • 我們可能看到社區中有些人變得不太耐煩,因為人們對WASI的發展滿意度明顯低于對WebAssembly`的發展的滿意度。
  • 許多受訪者表示,他們期望 WebAssembly 能夠實現 Java 最初提出的“一次編寫,到處運行”的承諾。

語言

第一個問題探討了人們正在使用的語言,即在開發使用 WebAssembly 的應用程序時,你使用或嘗試過使用哪些語言?8d628資訊網——每日最新資訊28at.com

圖片8d628資訊網——每日最新資訊28at.com

Rust 連續第三年成為 WebAssembly 使用最頻繁的語言。Rust 一直以來都非常適合 WebAssembly;它是一種現代系統級語言,擁有廣泛的流行度(Stack Overflow 連續七年顯示它是最受歡迎的語言),同時也是編寫 WebAssembly 運行時和平臺的流行語言。8d628資訊網——每日最新資訊28at.com

JavaScript是使用最廣泛的第二種語言,值得注意的是,因為不能將 JavaScript 編譯為WebAssembly。8d628資訊網——每日最新資訊28at.com

要運行 JavaScript 代碼,需要將運行時編譯為 WebAssembly,并在 WebAssembly 托管的解釋器中運行代碼。這種方法聽起來似乎效率不高,但卻出人意料地實用,而且越來越受歡迎。8d628資訊網——每日最新資訊28at.com

你可能不會獲得速度優勢,但確實可以從 WebAssembly 的安全性和隔離性中受益。想要進一步了解的話,作者推薦閱讀 Shopify 團隊的這篇深入文章,其中描述了他們如何支持用JavaScript編寫的'Shopify函數',這些函數在WebAssembly平臺上運行。8d628資訊網——每日最新資訊28at.com

以下圖表顯示了長期趨勢,比較了過去三次調查的結果,顯示了每種語言的使用者比例(頻繁或有時)——排除了<10%使用率的語言。8d628資訊網——每日最新資訊28at.com

圖片8d628資訊網——每日最新資訊28at.com

Rust  JavaScript 的使用正在增加,但其他更值得注意的變化正在下面發生。Swift  Zig 的采納率都有了顯著的增長。8d628資訊網——每日最新資訊28at.com

Swift 是 WebAssembly 生態系統中一個相對較新的成員,它始于幾年前蘋果公司的 Swift repo 上的一個拉取請求,目的是添加一個 wasm 目標。然而,盡管多年來提交了無數次,該請求卻一直未被合并。看起來社區并不氣餒,他們正在維護自己的分支。8d628資訊網——每日最新資訊28at.com

Swift  Rust 都是相當新的語言(分別為 2014 年和 2015 年),而 Zig 則更年輕,它出現于 2016 年,因此比 WebAssembly(其首個 MVP 版本發布于 2017 年)還要早一年。8d628資訊網——每日最新資訊28at.com

今年,作者在調查中添加了一個新問題,你與 WebAssembly 的專業關系如何?目的是將積極開發 WebAssembly 工具或平臺的人員與單純的最終用戶區分開來。將這兩類人分開后,我們發現他們對語言的偏好如下:8d628資訊網——每日最新資訊28at.com

圖片8d628資訊網——每日最新資訊28at.com

如預期,工具開發者對Rust有很強的偏好,還喜歡直接使用WAT(WebAssembly文本格式)編程WebAssembly。還有對 Go Python 的強烈偏好——這是作者沒想到的。8d628資訊網——每日最新資訊28at.com

調查中的下一個問題探討了每種語言有多么受歡迎,問了這樣一個問題:在將來開發利用WebAssembly 的應用程序時,你希望使用哪種語言?8d628資訊網——每日最新資訊28at.com

圖片8d628資訊網——每日最新資訊28at.com

Rust 再次名列榜首,反映了 Stack Overflow 的年度調查結果,JavasScript 位居第二。不過,使用頻率較低的 Zig 語言則成為第三大最受歡迎的語言。8d628資訊網——每日最新資訊28at.com

將每種語言 "經常使用 "的響應數與 "希望經常使用 "的響應數之間的Δ值繪制成理想度曲線,我們可以看到哪些語言的理想度與使用率之間的差異最大:8d628資訊網——每日最新資訊28at.com

圖片8d628資訊網——每日最新資訊28at.com

在 Zig、Kotlin 和 C# 的一端,我們可以看到可取性超過了當前的使用率,而在另一端,人們更希望少用 C++、JavaScript 和 WAT。8d628資訊網——每日最新資訊28at.com

運行時

考慮到基于非瀏覽器的 WebAssembly 使用量在不斷攀升,探索人們正在使用或只是知道哪些運行時是很有趣的,調查中只問了一個問題:你聽說過或使用過哪些運行時?8d628資訊網——每日最新資訊28at.com

圖片8d628資訊網——每日最新資訊28at.com

Bytecode Alliance 的 wasmtime 是使用最廣泛的運行時,排名第二的是由一家初創公司開發的 wasmer。Wazero 是該列表中的新成員,它是最近發布的一款 Go 語言運行時。8d628資訊網——每日最新資訊28at.com

WebAssembly 的實際應用

調查問了你目前使用 WebAssembly 來做什么?允許開發者選擇多個選項并添加自己的建議。以下是所有的回應,其中“其他”包括只有一個回應的所有內容:8d628資訊網——每日最新資訊28at.com

圖片8d628資訊網——每日最新資訊28at.com

Web應用程序開發仍居首位,但差距有所縮小。下圖顯示了逐年變化趨勢:8d628資訊網——每日最新資訊28at.com

圖片8d628資訊網——每日最新資訊28at.com

注意:在 2021年/2022 年的調查中,Serverless wasm后端使用的唯一選項。到2023年,這被拆分成兩個不同的類別,因此上述圖表中 Serverless 的虛線。將2023年的兩個選項組合在一起,后端使用會有輕微的增加。8d628資訊網——每日最新資訊28at.com

最值得注意的轉變是將 WebAssembly 用作插件環境。以下是一些真實的例子:8d628資訊網——每日最新資訊28at.com

  • Zellij 是一個以開發人員為中心的終端工作區,它有一個 WebAssembly 插件模型
  • Microsoft Flight Simulator允許你以 wasm 模塊的形式編寫插件。
  • Envoy和Istio都有一個 Wasm 插件API
  • 用 Rust 編寫的新集成開發環境 Lapce 擁有基于 WASI 的插件系統

在每種情況下,平臺(終端、編輯器、飛行模擬器、代理)都能受益于允許終端用戶在安全和隔離的環境中使用各種編程語言擴展功能。換句話說,如果有人編寫的插件行為不端或性能不佳,對平臺本身的影響將降到最低。8d628資訊網——每日最新資訊28at.com

報告中還詢問了受訪者——你組織的WebAssembly采納的狀態是什么?8d628資訊網——每日最新資訊28at.com

圖片8d628資訊網——每日最新資訊28at.com

從上圖我們可以看出,41% 的受訪者正在生產中使用 WebAssembly,另有 28% 的受訪者正在試用或計劃在明年使用 WebAssembly。8d628資訊網——每日最新資訊28at.com

調查還探討了WebAssembly需要哪些幫助來推動進一步的應用:8d628資訊網——每日最新資訊28at.com

圖片8d628資訊網——每日最新資訊28at.com

最常被提及的 "需求 "是通過 WASI(WebAssembly 系統接口)實現更好的非瀏覽器集成。WebAssembly 規范沒有定義任何主機集成點,無論是訪問 DOM,還是與主機運行時交換數據(例如在瀏覽器中將值傳遞給 JavaScript)。WASI 正在填補這一空白,但目前還沒有完整的答案。8d628資訊網——每日最新資訊28at.com

其次是更好的調試支持,隨著人們使用 WebAssembly 開發出更復雜的解決方案,這一點將變得更加重要。如需了解更多選項,請查看 Shopify 團隊的這篇博文。8d628資訊網——每日最新資訊28at.com

功能

WebAssembly(由萬維網聯盟管理)和 WASI(由萬維網聯盟 WebAssembly 社區小組的一個子組織管理)都在不斷發展,并按照標準的 5 階段提案流程積壓了大量新功能。8d628資訊網——每日最新資訊28at.com

關于 WebAssembly 建議,下面列出了最受歡迎的建議:8d628資訊網——每日最新資訊28at.com

圖片8d628資訊網——每日最新資訊28at.com

線程、垃圾回收和異常處理在去年的評選結果中都名列前茅,這三者在提案生命周期中都處于實施(第 3 階段)或標準化(第 4 階段)階段。這意味著它們已經可以使用,并接近最終確定。8d628資訊網——每日最新資訊28at.com

組件模型是一項更早期的提案(第 1 階段),其廣泛的目標是使在運行時以任何語言編寫的 wasm 模塊的組成更加容易。如果您對細節感興趣,我推薦您觀看由該提案的牽頭人 Luke Wagner 播放的視頻。8d628資訊網——每日最新資訊28at.com

關于 WASI 提案,以下內容顯示了哪些提案最受歡迎:8d628資訊網——每日最新資訊28at.com

圖片8d628資訊網——每日最新資訊28at.com

最重要的四項建議都與 I/O 有關,簡單地說,為 WebAssembly 模塊創建一種與外界通信的標準方式是當務之急。8d628資訊網——每日最新資訊28at.com

最后,執行詢問人們對 WebAssembly 和 WASI 的發展有多滿意:8d628資訊網——每日最新資訊28at.com

圖片8d628資訊網——每日最新資訊28at.com

有很多人對此并不滿意!這一點也不奇怪,因為以公開透明的方式制定有眾多利益相關者參與的規范并不容易,而且需要時間。更值得注意的是,人們普遍對 WASI 的發展不太滿意。8d628資訊網——每日最新資訊28at.com

作者想在這里提一個重要的觀點;這個結果不應該直接作為對WASI和WebAssembly團隊所做的出色努力的批評。對WASI發展的不滿可能只是反映了人們對技術的渴望,這不是一件壞事。8d628資訊網——每日最新資訊28at.com

今年早些時候,Wasmer宣布了WASIX,這是他們加速WASI(或它代表的概念)的嘗試,得到了混合的反應。8d628資訊網——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-26-17143-0.html2023年WebAssembly 現狀

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

上一篇: 2023年WebAssembly 現狀

下一篇: select...for update,表鎖?行鎖?間隙鎖?

標簽:
  • 熱門焦點
Top 主站蜘蛛池模板: 雷波县| 巴南区| 襄汾县| 瑞金市| 沾益县| 赞皇县| 毕节市| 台江县| 饶平县| 调兵山市| 阿鲁科尔沁旗| 霸州市| 贵定县| 长宁区| 津南区| 新源县| 隆尧县| 安西县| 竹山县| 平潭县| 磴口县| 阿鲁科尔沁旗| 杭州市| 怀远县| 垦利县| 黄冈市| 平谷区| 石城县| 西盟| 通化市| 牡丹江市| 繁峙县| 古浪县| 乌兰县| 广元市| 万年县| 二连浩特市| 当涂县| 科尔| 都匀市| 安康市|