<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>

          Deno 繼顛覆 Node 之后,又“內(nèi)部”拒絕了 TypeScript

          共 1053字,需瀏覽 3分鐘

           ·

          2020-06-25 23:21

          (給前端大學(xué)加星標(biāo),提升前端技能.

          轉(zhuǎn)自:oschina

          https://www.oschina.net/news/116620/deno-will-stop-using-typescript

          Deno 團隊計劃刪除所有內(nèi)部代碼構(gòu)建時的 TS 類型檢查與捆綁。打算將所有運行時代碼轉(zhuǎn)移到同一個 JavaScript 文件當(dāng)中,但仍將使用隨附的 d.ts 文件保存類型定義與說明文檔。理由是:

          • 在變更文件時,TypeScript 往往需要幾分鐘的編譯時間,這導(dǎo)致連續(xù)編譯過程變得非常緩慢;

          • 在創(chuàng)建 Deno 可執(zhí)行文件以及面向用戶的 API 源文件時,TypeScript 結(jié)構(gòu)會引發(fā)一系列運行時性能問題;

          • TypeScript 本身對于 Deno 代碼的組織工作毫無幫助,反而增強了代碼組織負擔(dān)。Deno 團隊提出的一大現(xiàn)實問題,是 TypeScript 會在兩個位置復(fù)制相互獨立的 Body 類,https://github.com/denoland/deno/issues/4748

          • 由于 TypeScript 編譯器無法幫助開發(fā)者生成 d.ts 文件,內(nèi)部代碼與運行時 TypeScript 聲明必須以手動方式保持同步;

          • 他們維護著兩臺 TS 編譯器主機:一臺用于內(nèi)部 Deno 代碼,另一臺用于外部用戶代碼,但二者的作用其實非常相似。

          需注意的是,Deno 將僅在內(nèi)部代碼中停用 TypeScript,Deno 用戶代碼中的 TypeScript 部分仍將保留,類型檢查自然也將并存。

          雖然 TypeScript 常被視為 JavaScript 的改進版本,但此次情況提醒我們問題也許沒那么簡單。與任何其他語言一樣,TypeScript 也有自己的缺陷。其最重要的問題之一,在于緩慢的編譯速度。?在從純 JavaScript 轉(zhuǎn)換至 TypeScript 時,小型項目可能編譯變慢的問題還不算嚴重,但大型項目(例如復(fù)雜的 React 應(yīng)用程序)則將深受其害。從 Deno 項目的體量出發(fā),停止使用 TypeScript 也算是順理成章。

          但這種性能妥協(xié)也可以理解,畢竟在開發(fā)過程中進行類型檢查,相當(dāng)于用編譯時長換取安全保障。當(dāng)然,TypeScript 項目中也提供關(guān)于如何解決并縮短編譯時間的大量說明文檔。最有趣的方法之一是項目引用,意味著開發(fā)人員可以將大規(guī)模 TypeScript 代碼片段拆分為較小的代碼片段。

          分享前端好文,點亮?在看?58c22f923eccb8ae9cee9d7036222bca.webp

          瀏覽 56
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

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

          手機掃一掃分享

          分享
          舉報
          <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>
                  一级一片免费观看 | 三级电影网久久 | 操逼视频直接看 | 亚洲天堂精品在线观看 | 丝袜足交片 |