您好,登錄后才能下訂單哦!
這篇文章主要講解了“人們還沒有轉向Svelte的原因是什么”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“人們還沒有轉向Svelte的原因是什么”吧!
Svelte是一個輕量級的基于組件的框架,比如React、Vue或Angular也都是,它允許開發人員用JavaScript編寫易于閱讀的代碼,然后將編寫的代碼編譯成在瀏覽器中運行速度超快的高效JavaScript。
當其他框架(如React)采用虛擬DOM diffing技術時,Svelte將你的代碼編譯成JavaScript,當你的組件中的狀態變化時,DOM就會更新。
自從2016年11月由Richard Harris首次發布以來,很多開發者都愛上了這種新的構建應用的方法,在其官方Github倉庫上有超過3.9萬顆星,并在頂級JavaScript前端框架的選擇中爭得一席之地。
盡管有這些數據,但是,很多人在前端開發過程中都在猶豫要不要采用Svelte這個框架。
根據trends.buildwith.com的數據,截至2020年10月,總共只有約6000個注冊的直播和歷史網站使用Svelte作為首選前端庫。相比React的340萬左右、Vue的150多萬、Angular的370多萬,這個數據是超低的。
為什么開發人員尚未切換到Svelte
(1) 遲來的TypeScript支持
例如,當你從Angular這樣的框架中走出來時,你會很習慣于開箱即為你預置一個TypeScript開發環境。Svelte團隊在2020年7月才剛剛發布了包含官方支持TypeScript的更新。
這意味著開發者現在可以在創建Svelte項目時運行以下命令來設置TypeScript:
npx degit sveltejs/template svelte-typescript-app cd svelte-typescript-app node scripts/setupTypeScript.js
雖然事先可以使用TypeScript,但最初的設置過程相當繁瑣,因為它涉及到一堆耗時的自定義Webpack和Svelte預處理配置。Svelte現在默認包含TypeScript支持,這是一件好事,因為這個主要的缺失點似乎是阻礙開發者學習和使用該框架的因素之一。前段時間Deno正式發布的時候,在開發者中考慮到的一個關鍵賣點就是它比Node的TypeScript集成優勢。
(2) 沒有官方的CRA或Svelte CLI
如果你需要快速構建一個React應用的腳手架,你可以很容易地使用create-react-app CLI應用(鑒于它已在全球范圍內安裝),只需運行 create react app myreactproject 命令就會自動為你生成應用腳手架。
對于Vue來說,過程是類似的,只要你的機器上安裝了Vue CLI,你只需要運行這個命令,你的腳手架就設置好了。
vue init myvueproject
然而Svelte并沒有官方維護的腳手架項目的CLI應用,因為 svelte/cli 包已經在2018年被廢棄。
你需要總是從它的 npx 倉庫(已經集成了 CLI)中提取腳手架模板。這意味著,每次你想創建一個Svelte應用程序時,你需要始終運行以下命令來設置一個Svelte項目。
npx degit sveltejs/template my-svelte-project cd my-svelte-project npm install npm run dev
雖然這看似是一個小小的DX(開發者體驗)缺陷,但這絕對是Svelte團隊可以研究的問題。
(3) 小型社區
與其他主要的前端開發框架相比,Svelte擁有一個非常小的社區。如果您使用的是擁有大型社區的流行語言,那么您更有可能找到需要合作的人,你也更有可能找到參考資料和資源。
比如在Stack Overflow上,Svelte標簽下提出的討論(問題和答案)只有一千多條。相比React的25萬+、Angular的23.4萬+、Vue的6.4萬+分別來說,還有很多工作要做。這意味著,如果你作為開發者在使用Svelte時遇到問題,得到幫助的機會相對較小。
(4) 更少的包裝/工具支持
很多開發者發現,整合現有的包,有助于更快地實現任務。由于Svelte的普及率比較低,所以包和實用程序的支持比較少。例如,如果你想在React中實現一個date-picker組件,在NPM倉庫中就有數百個包可供選擇。然而,對于Svelte您就沒有這樣的奢侈了,因為可供開發人員挑選的特性很少,因此,開發人員通常要花時間從頭開始實現這些特性。
(5) 行業需求低迷
如果雇主對一個工具有足夠的需求,開發人員學習這個工具是有道理的。作為一名開發人員,如果學習一種工具有利可圖的話,您會希望獲得它的知識。
Svelte在JavaScript世界中比較年輕,因此,行業對Svelte開發人員的需求不大,因為很多公司的基礎設施中還沒有采用Svelte(還沒有)。
為什么企業還不轉用Svelte?
(1) 公司的支持
React得到了Facebook的大力支持,因為最初開發它的是Facebook內部員工,Angular的開發團隊由谷歌的開發人員領導,他們也在自己的職業網站上使用Vue。比如蘋果,在他們的SwiftUI教程網站中也使用了Vue。然而Svelte并沒有(還沒有)得到這些大型科技公司的明顯支持。我堅信,如果Svelte獲得這些公司的支持,將會有更多的公司開始采用Svelte。如果這些公司中的任何一家在其基礎設施中采用或支持該框架,Svelte的受歡迎程度可能會飆升。
(2) 成熟度
如果一項技術存在的時間較長,那么它就會被認為比其對應的技術更可靠,因為隨著時間的推移,技術會隨著錯誤修復、更多的文檔和教程、語言語法和安全性的改進等方面而不斷改進。
由于Svelte(2016年發布)在前端框架領域比React、Vue、Angular等年輕,相對較新,所以對其成熟度存在一定程度的擔憂是很正常的。相信不少公司因為Svelte的年齡,對采用Svelte構建產品的安全性持懷疑態度。
(3) 最后
從目前的流行程度和有用性來看,毫無疑問,Svelte是未來web開發的重要組成部分。作為一個Svelte開發者,如果能有更多的公司和開發者采用Svelte及其所有的美感,作為他們制作Web應用的前端Web框架的選擇,那將是一件非常棒的事情。
感謝各位的閱讀,以上就是“人們還沒有轉向Svelte的原因是什么”的內容了,經過本文的學習后,相信大家對人們還沒有轉向Svelte的原因是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。