GitHub年度盤點:Deno趕超Node,躍升第四!

本文通過對比各項目過去 12 個月在 GitHub 上新增 star 數量,來評估其在 2018 年度的受關注程度,進而選出 2018 年度 JavaScript 領域崛起的明星項目。

最受歡迎的前20個項目

這些就是今年最火的前20項目,基本涵蓋所有類別。

Vue.js 已經連續三次登頂年度排行榜冠軍。它今年在 GitHub 上新增了超過 45k 的 star,比 2017 還要多 5k,增長勢頭依然不減!

第 4 名Deno是2018年前十名中唯一的一個新項目。Deno 是“一個可在瀏覽器外執行 JavaScript 和 TypeScript 代碼的程序”
根據其作者 Ryan Dahl( Node.js 之父)的說法,這是一個嘗試解決部分 Node.js 原有問題的、可靠的 TypeScript 運行時。

前端框架

在前端框架方面,主導者還是與2017 年一樣,仍是三大框架:Vue.js,React 和 Angular。

其中在2018年6月,Vue.js 和 React的star數增長 都有一個小高峯。這是什麼原因呢?當時正值 Vue.js的總star 數超過 React,成爲 UI 框架類別中最受歡迎的項目。那時候,雙方的粉絲都在爲他們心目中的冠軍拉票!

2018 年的新秀是 Omi,一個運用了 Shadow DOM 技術的、大有前途的 UI 框架,同時採用了 React 開發者們熟知的 “JSX” 語法。

Node框架

在 2018 年中領跑的兩個 Node.js 框架是基於特定前端框架的“全棧框架”:

  • 採用 React 的 Next.js,本類別的新冠軍。

  • 採用 Vue.js 的 Nuxt。

它們都保證了良好的單頁應用(SPA)開發體驗,並支持服務端渲染(SSR)。

位於第 4 的是 Express,它曾是2017 年的第一名,儘管它“年事已高”,依然十分流行。

React 生態圈

不出意外,在 React 生態圈類別,2018 年的頭號項目是 Create React App,它是創建新 React 項目的事實上的工具。其第 2 版在 2018 年發佈,是一次大版本更新,改動包括內置 Webpack 4,以及使用 TypeScript 的可能性。

對於 React 本身,主要變動在於引入了 hooks,它或許能夠改變我們對於狀態管理的處理方式,以及調整 React 中的副作用。

Vue 生態圈

Vue.js 的勢頭還在增長,Vue 3.0計劃發揮出現代瀏覽器的優勢,以便更高效地運行和更易於使用。

Vue Element Admin,Vue.js 生態圈最流行的項目,是使用 Vue.js 組件構建漂亮的儀表板的解決方案。

vue-cli 是使用現代 JavaScript 工具構建一個新的 Vue.js 應用程序的標準解決方案。它能夠和 React 的 Create React App 相提並論,但它更靈活並提供了一個圖形化的UI界面,使得它非常方便用戶。

Angular 生態圈

2018 年,Angular有兩個大版本更新,Angular 6 於五月推出,提供了很多和工具化相關的功能。

因此,在 Angular 生態圈中,最流行的項目是官方的命令行工具 Angular CLI,用於搭建新項目和管理現有項目。在這些新功能中,update 命令使更新應用和依賴變得容易。此外,現在可以在不 “ejecting” 的情況下調整底層 Webpack 配置。

Angular 7 於十月發佈。包含了 Angular CLI prompts,以及 Material Design for Angular 的更新,並側重性能提升,包括一個稱爲“虛擬滾動”(Virtual Scrolling)的特性。

移動開發

React Native 依然是使用 JavaScript 語言創建移動端應用的主要解決方案。

對於那些希望使用 Vue.js 而不是 React 的人們來說,這兒也有一些選擇。以下四個本類別中的項目(Weex,NativeScript,Quasar 和 Ionic)全都支持 Vue.js 作爲視圖層來構建移動端應用。

來自 Google 的 Flutter 雖然不是 JavaScript 語言的項目(因爲它使用 Dart 編程語言), 但對於構建跨環境移動端應用,它也是一個很棒的備選方案。

編譯工具

我們過去曾討論在 JavaScript 中引入靜態類型的最佳方案。

到了 2018 年,微軟的 TypeScript 大幅領先了其靈感來源 —— Facebook 的 Flow。實際上,支持 TypeScript 的最新版 Babel 是一個攪局者。

TypeScript 幾乎是一個開發標準:無論對於後端還是前端開發來說,我們看到越來越多的項目包含了 TypeScript 聲明。而且,如果某些庫自身不帶類型聲明,那麼名爲 DefinitelyTyped 的項目會爲大量的那些庫提供類型聲明。

構建工具

打包工具 Parcel 證實了它在 2017 年的成功,開發者們喜歡零配置建立一個新項目的能力。

測試框架

2018 年中測試框架領域總體沒有什麼變化,5 個領先的解決方案保持了和 2017 年相同的排名。
Jest 比競爭者們進步更快,開發者們喜歡 Fackbook 的全功能測試框架所帶來的效用 —— 無論是在前端(它最初被打算用於測試 React 組件)還是後端使用,而且它是零配置的。

IDE 和編輯器

VS Code,全類別裏第 3 流行的項目,幾乎就是用於 web 開發的事實上的 IDE 了。它依靠自動補全功能和自帶 TypeScript 集成站穩了腳跟。殺手級功能可能就是對於 Node.js 的調試能力了吧。

CSS in JavaScript

雖然目前,對於基於組件的現代前端應用,什麼纔是最好的樣式化方案,還沒有定論(無論 React,Vue.js 還是 Angular)。但是 Styled Components依然有着最好的勢頭,看起來是最受歡迎的“組件樣式化”解決方案。

靜態網站生成器

和 2017 年一樣,Gatsby 在 2018 年依然是最受歡迎的靜態站點生成器(用於生成一組 HTML JavaScript 和 CSS 文件,以便能夠在任意地方託管,超快響應 —— 的一種工具)。

Gatsby 的亮點在於它的多面性(你能結合單頁應用和靜態站點的優點)以及對性能的關注。
如果你希望使用 Vue.js 而不是 React,那麼第 2 名的 VuePress 或許是恰當的選擇。

GraphQL

GraphQL 生態圈正在高速發展,並且有一個大趨勢是: 一些工具的出現能夠簡化 GraphQL 的配置過程。

Gatsby 依然是第一名,而且它絕對是最易上手使用 GraphQL 的工具之一。從 Graphcool 演變而來的 Prisma 位於第二。與此同時,Hasura GraphQL Engine 還可以幫你直接從數據庫生成一個能運作的後端。

前 15 名的其餘部分,包括 GraphQL 服務端、客戶端、以及各種其他工具 —— 比如 GraphQL Playground。

總結

2018年,JavaScript生態圈的項目在GitHub上的表現與我們之前發佈過的2018年JavaScript生態圈調查報告裏的結果有很多相似之處,因爲都是開發者主觀表達得到的結果,從客觀上來說,各項目在npm上的下載率才能真正代表市場上的應用情況。但GitHub能在某種程度上代表了一種潛在的趨勢,在開發者選擇自己的開發模式時,給出新的借鑑。

原文鏈接

https://risingstars.js.org/2018/zh/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章