<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          ?推薦一個神器!可以在瀏覽器運行 Node.js

          共 2042字,需瀏覽 5分鐘

           ·

          2021-05-27 15:00

          在最新的 Google I/O 主題演講中 stackblitz 向大家介紹了他們與 Next.jsGoogle 團隊合作開發(fā)的在線 IDE WebContainers ,真的是非常驚艷。

          幾年前,我們意識到網(wǎng)絡正朝著一個關鍵的拐點發(fā)展。WebAssembly 的出現(xiàn)讓我們可以有能力編寫基于 WebAssembly 的操作系統(tǒng),這個操作系統(tǒng)的功能強大到可以完全在瀏覽器中運行 Node.js。我們設計了一個比本地環(huán)境更快,更安全和一致的高級開發(fā)環(huán)境,可以實現(xiàn)無縫代碼協(xié)作,而不需要設置本地環(huán)境。

          兩年后的今天,他終于誕生了!

          WebContainers

          WebContainers 允許你創(chuàng)建一個完整的 Node.js環(huán)境,它可以在毫秒內(nèi)啟動,并且可以實現(xiàn)一鍵聯(lián)機和鏈接共享。這個環(huán)境具有 VS Code 強大的編輯功能,完整的終端,還有 npm 等功能。它也完全在你的瀏覽器中運行,這帶來了一些關鍵的好處:

          • 比本地環(huán)境快。構建速度比 yarn/npm20%,包安裝速度可以快 5倍。
          • 支持在瀏覽器中調(diào)試 Node.js 。與 Chrome DevTools 的無縫集成可實現(xiàn)本機后端調(diào)試,無需安裝擴展。
          • 默認安全。所有代碼執(zhí)行都發(fā)生在瀏覽器的安全沙箱中,而不是在遠程 VM 或本地二進制文件上。

          同樣,這些環(huán)境不需要在遠程服務器上運行。而是每個環(huán)境都完全包含在你的 Web 瀏覽器中。沒錯:Node.js 運行時本身是第一次在瀏覽器內(nèi)部本機運行。

          你可以在 StackBlitz.com 上自己嘗試一下:

          為什么

          舊版在線 IDE 在遠程服務器上運行整個開發(fā)環(huán)境,并將結果通過 Internet 流回瀏覽器。這種方法的問題在于它太不安全了,而且?guī)缀踉谒蟹矫娑急饶愕谋镜赜嬎銠C體驗更差:首先需要耗時幾分鐘來啟動容器,并且容易出現(xiàn)網(wǎng)絡延遲,沒有辦法離線工作,經(jīng)常導致網(wǎng)絡超時,調(diào)試一個已經(jīng)掛掉的容器幾乎是不可能的。

          隨著 Web 開發(fā)慢慢轉向像 Next.js 這樣的全棧 SSRSSG,設置本地的開發(fā)環(huán)境變得越來越麻煩,StackBlitz 通過利用瀏覽器中數(shù)十年來的速度和安全性創(chuàng)新來解決這些問題。StackBlitz 中的所有的計算都會在瀏覽器安全沙箱中運行,不會在你的本地計算機上運行,這會讓你的開發(fā)過程更快更安全。

          使用 Chrome DevTools 調(diào)試 Node.js

          事實證明,瀏覽器確實非常擅長調(diào)試 Javascript。通過在瀏覽器中執(zhí)行 Node.js,與 Chrome DevTools 的集成即開即用。無需安裝,無需擴展,僅在瀏覽器就能進行本機后端調(diào)試:

          在瀏覽器中啟動服務端

          WebContainers 包含一個虛擬的 TCP 網(wǎng)絡堆棧,這個堆棧會映射到瀏覽器的ServiceWorker API,使你能夠創(chuàng)建實時的 Node.js 服務器,即使你處于脫機狀態(tài)也可以繼續(xù)工作。因為它完全在瀏覽器安全沙箱中運行,所以服務器響應的延遲比 localhost 還小,并且可以保護你的 Web 服務器免受本地主機抓包攻擊:

          毫秒啟動

          瀏覽器執(zhí)行 JavascriptWebAssembly 的速度快得令人難以置信。我們利用這一點來創(chuàng)建一個即時開發(fā)操作系統(tǒng),它不使用服務器資源,也不會在你的計算機上創(chuàng)建 node_modules ...

          零延遲、脫機運行

          無論你是在火車上,在飛機上還是在雨天后排座位上,都可以在沒有互聯(lián)網(wǎng)連接的情況下繼續(xù)工作:

          默認安全

          使用 StackBlitz 先進的計算模型,所有代碼執(zhí)行都發(fā)生在瀏覽器安全沙箱中。與本地相比,這會更快,更少限制的開發(fā)環(huán)境,同時又提供了更高的安全性。

          實際上,默認的安全狀況非常穩(wěn)固,以至于我們的嵌入式軟件包管理器是第一個可公開獲得的工具,可以解決五年多來未解決的 npm 漏洞。

          和桌面程序一樣的編輯體驗

          借助 ChromePWA 功能,只需單擊即可輕松安裝 StackBlitz 。幾毫秒后,你就有了一個桌面 IDE。你平時用的快捷鍵,例如 CMD + W和CMD + T,都可以正常工作。此外,就像在本地一樣,你也可以在一個完全獨立的窗口中打開和調(diào)試開發(fā)服務器。

          從本地文件系統(tǒng)讀取和寫入。

          Chrome 最近發(fā)布了 File System Access API。這使 PWA能夠請求對本地文件系統(tǒng)的某些部分進行持久的讀寫訪問。

          你能分清楚上面哪個是 StackBlitz 哪個是 VS Code 嗎?

          我體驗了一波后,感覺還是非常 Nice 了的,目前產(chǎn)品還處于公測階段,大家感興趣可以自己到  StackBlitz.com  自己體驗一下。

          瀏覽 87
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  天天拍拍日日拍拍 | 中国美女操逼网站 | 人人插人人搞 | 中文字幕第6页 | 国产无码豆花 |