簡評:很多框架都沒用過,學不完學不完。
本文將比較相同 RealWorld 應用 不同實現的各種指標。
RealWorld 示例程序 有以下特點
- 真實的應用程序:不僅僅是簡單的 TODO 項目。
- 標准化: 符合特定規則的項目。提供后端API,靜態標記,樣式和規范。
- 由專家撰寫或審閱:這些項目由該領域的專家構建或審查。
我們正在比較哪些庫/框架?

比較的指標有:
- 性能:此應用程序顯示內容並到可用花費的時間?
- 大小:該應用有多大?我們只會比較已編譯后 JavaScript 文件的大小。CSS 對於所有變種都是通用的,並且從 CDN(內容交付網絡)下載。HTML 也適用於所有變體。所有技術都可以編譯或轉換成 JavaScript,因此我們只比較 JavaScript 文件的大小。
- 代碼行:作者需要根據規范創建 RealWorld 應用程序需要多少行代碼?我們量化標准是應用程序src/中的代碼行數。
性能
使用 Chrome 的 Lighthouse Audit 來進行首次有效繪制測試。首次游戲繪制的時間越短體驗越好。

大小
轉換的代碼大小來自 Chrome network tab 數據顯示。從服務器返回的 GZIPed 響應標頭加上響應主體。文件越小意味着下載越快(並且解析速度越快)。
這取決於你的框架大小、你添加的額外依賴關系以及你的構建工具如何壓縮。

可以看到 Svelte, Dojo 2 和 AppRun 表現非常的出色。
代碼行(編譯前的代碼量)
我們使用 cloc 來計算每個 repo 的 src 文件夾中的代碼行。空白和注釋會被忽略。

代碼量越小,出現錯誤的概率就越小。
原文:link
