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

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

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

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

前端框架Svelte放棄TypeScript,JS贏!

OSC開源社區(qū) ? 來源:OSC開源社區(qū) ? 2023-05-11 10:39 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

根據(jù) Svelte repo 中"TS to JSDoc Conversion"PR 的描述,Svelte 團隊將會從目前使用的 TypeScript 遷移到 JSDoc。

a8a01a30-ef56-11ed-90ce-dac502259ad0.jpg

前端 UI 框架 Svelte 創(chuàng)始人 Rich Harris 在推特的回復(fù)印證了這一消息。他表示這個決定沒有改變 Svelte 的類型安全。

a8cb3c38-ef56-11ed-90ce-dac502259ad0.png

負責 Svelte 編譯器的開發(fā)者則說道,改用 JSDoc 后,代碼不需要編譯構(gòu)建即可進行調(diào)試 —— 簡化了編譯器的開發(fā)工作。畢竟目前的調(diào)試工作比較復(fù)雜,需要使用構(gòu)建步驟進行調(diào)試。 另外,使用 JSDoc 不會影響編譯器的開發(fā)安全,因為它的類型幾乎等同于 TypeScript,依然可以使用 tsc 編譯器檢查類型。

a8dd946e-ef56-11ed-90ce-dac502259ad0.png

當然,Svelte 開發(fā)者(不是編譯器開發(fā)者)仍會像現(xiàn)在一樣獲得類型定義文件。因此對于 Svelte 開發(fā)者來說,在類型方面不會有任何變化。 Svelte 不是第一個放棄 TypeScript 的前端框架。早在 2020 年,Deno就遷移了一部分內(nèi)部 TypeScript 代碼到 JavaScript,以減少構(gòu)建時間。當時Deno 團隊計劃刪除所有內(nèi)部代碼構(gòu)建時的 TS 類型檢查與捆綁。

a90453b0-ef56-11ed-90ce-dac502259ad0.png

對此,Deno 團隊給出的理由是:

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

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

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

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

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

總結(jié)就是減少構(gòu)建時間、降低發(fā)布的代碼體積、減少編寫的代碼量。 要注意的是,當時 Deno 僅在內(nèi)部代碼中停用 TypeScript,Deno 用戶代碼中的 TypeScript 部分仍將保留,類型檢查自然也將并存。 從這些案例可以看出,雖然 TypeScript 常被視為 JavaScript 的改進版本,但問題也許沒那么簡單。與任何其他語言一樣,TypeScript 也有自己的缺陷。其最重要的問題之一,在于緩慢的編譯速度。在從純 JavaScript 轉(zhuǎn)換至 TypeScript 時,小型項目可能編譯變慢的問題還不算嚴重,但大型項目(例如復(fù)雜的 React 應(yīng)用程序)則將深受其害。

審核編輯 :李倩

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

    關(guān)注

    1

    文章

    214

    瀏覽量

    18226
  • 編譯器
    +關(guān)注

    關(guān)注

    1

    文章

    1659

    瀏覽量

    50064

原文標題:前端框架Svelte放棄TypeScript,JS贏!

文章出處:【微信號:OSC開源社區(qū),微信公眾號:OSC開源社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

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

    ArkUI介紹

    范式,分別是基于ArkTS的聲明式開發(fā)范式(簡稱“聲明式開發(fā)范式”)和兼容JS的類Web開發(fā)范式(簡稱“類Web開發(fā)范式”)。 聲明式開發(fā)范式:采用基于TypeScript聲明式UI語法擴展而來
    發(fā)表于 06-24 06:41

    ArkUI-X框架LogInterface使用指南

    ) { } } 設(shè)置ArkUI-X框架LogInterface以及日志攔截等級 在需要控制ArkUI-X框架日志及TypeScript日志的輸出時,可以利用StageApplicationDelegate類中
    發(fā)表于 06-15 23:20

    tscircuit - 電路開發(fā)的 React 范式? 用TypeScript、React和 AI工具構(gòu)建電子產(chǎn)品

    TypeScript、React 和 AI 工具構(gòu)建電子產(chǎn)品。
    的頭像 發(fā)表于 04-30 18:18 ?651次閱讀
    tscircuit - 電路開發(fā)的 React 范式?   用<b class='flag-5'>TypeScript</b>、React和 AI工具構(gòu)建電子產(chǎn)品

    AIWA HS-JS415維修手冊

    電子發(fā)燒友網(wǎng)站提供《AIWA HS-JS415維修手冊.pdf》資料免費下載
    發(fā)表于 04-08 10:37 ?1次下載

    AIWA JS215維修手冊

    電子發(fā)燒友網(wǎng)站提供《AIWA JS215維修手冊.pdf》資料免費下載
    發(fā)表于 04-01 16:44 ?2次下載

    熱門前端框架:引領(lǐng)現(xiàn)代 Web 開發(fā)的潮流

    在當今快速發(fā)展的前端開發(fā)領(lǐng)域,熱門前端框架如 React、Vue 和 Angular 等,成為了開發(fā)者構(gòu)建高效、高性能 Web 應(yīng)用的得力工具。它們各自具有獨特的特點和優(yōu)勢,引領(lǐng)著現(xiàn)代 Web 開發(fā)
    的頭像 發(fā)表于 01-22 10:08 ?413次閱讀

    Node.js小科普和Node.js安裝常見管理工具

    Node.js是一個JavaScript的運行環(huán)境,用來執(zhí)行JavaScript代碼。 為什么會出現(xiàn)這么一個運行環(huán)境呢,從JavaScript研發(fā)初衷可以看出它是為了運行在瀏覽器中的,讓網(wǎng)頁交互更加
    的頭像 發(fā)表于 11-23 15:37 ?394次閱讀
    Node.<b class='flag-5'>js</b>小科普和Node.<b class='flag-5'>js</b>安裝常見管理工具

    簡述大前端技術(shù)棧的渲染原理

    應(yīng)用開發(fā):Android、iOS、鴻蒙(HarmonyOS)等; ?Web前端框架:Vue、React、Angular等; ?小程序開發(fā):微信小程序、京東小程序、支付寶小程序等; ?跨平臺解決方案:React Native、Flutter、Taro、Weex等。 什么是渲
    的頭像 發(fā)表于 11-07 10:11 ?616次閱讀

    鴻蒙跨端實踐-JS虛擬機架構(gòu)實現(xiàn)

    在Roma跨端方案中,JS虛擬機是框架的核心,負責執(zhí)行動態(tài)化的JS代碼。在Android平臺采用了基于V8的J2V8,iOS平臺則使用了系統(tǒng)自帶的JSCore,而在HarmonyOS中,由于業(yè)界無
    的頭像 發(fā)表于 09-30 14:42 ?2939次閱讀
    鴻蒙跨端實踐-<b class='flag-5'>JS</b>虛擬機架構(gòu)實現(xiàn)

    史無前例,移植V8虛擬機到純血鴻蒙系統(tǒng)

    層使用,為保證基于Roma框架開發(fā)的業(yè)務(wù)可以零成本、無縫運行到鴻蒙系統(tǒng),需要將Roma框架適配到鴻蒙系統(tǒng)。 Roma框架是基于JS引擎運行的,在iOS系統(tǒng)使用系統(tǒng)內(nèi)置的Javascri
    的頭像 發(fā)表于 09-18 10:28 ?1693次閱讀
    史無前例,移植V8虛擬機到純血鴻蒙系統(tǒng)

    推薦一個支持js的嵌入式設(shè)備開發(fā)平臺

    可以通過vscode開發(fā)js,實時推送js代碼到設(shè)備里運行,無需編譯,支持屏幕,感興趣的可以看看 https://github.com/duoxianwulian/dxdop 提供很多js庫,可以
    發(fā)表于 09-04 14:04

    工程師必備!Node.js和常見管理工具介紹(附操作演示)

    在現(xiàn)代軟件開發(fā)中,JavaScript已成為一種廣泛使用的編程語言,在web前端開發(fā)、后端開發(fā)、移動應(yīng)用端開發(fā)等領(lǐng)域中都有它的身影。在本文中,將從JavaScript語言為出發(fā)點,揭示這一
    的頭像 發(fā)表于 08-30 12:34 ?542次閱讀
    工程師必備!Node.<b class='flag-5'>js</b>和常見管理工具介紹(附操作演示)

    bootstrap框架和vue框架的區(qū)別

    Bootstrap和Vue都是目前非常流行的前端開發(fā)框架,它們各自具有獨特的優(yōu)勢和特點。 設(shè)計理念 Bootstrap是一個基于HTML、CSS和JavaScript的前端開發(fā)框架,主
    的頭像 發(fā)表于 07-11 09:55 ?1419次閱讀

    bootstrap框架介紹

    Bootstrap是一個流行的前端框架,它提供了一套響應(yīng)式、移動優(yōu)先的CSS和JavaScript組件,可以幫助開發(fā)者快速構(gòu)建美觀、功能豐富的網(wǎng)頁。 一、Bootstrap簡介 1.1
    的頭像 發(fā)表于 07-11 09:53 ?1067次閱讀

    bootstrap框架用什么軟件開發(fā)

    Bootstrap是一個流行的前端框架,用于快速開發(fā)響應(yīng)式和移動優(yōu)先的Web應(yīng)用程序。它提供了一套預(yù)定義的CSS和JavaScript組件,使得開發(fā)者可以快速構(gòu)建出漂亮的用戶界面
    的頭像 發(fā)表于 07-11 09:50 ?797次閱讀