StateOfJS: 2018年JavaScript生態圈趨勢報告

前言

作爲前端開發者,及時瞭解行業動態對我們的工作、學習方向起到至關重要的作用,畢竟知識太多,選擇對的學習方向才能既省力又能緊跟技術發展潮流。近期,StateOfJS發佈了剛剛過去的2018年JavaScript趨勢報告,讓我們一起來看看吧。

2018 年的報告,總共有來自 153 個不同的國家共 20,000 多名 JavaScript 開發者參與調查(中國佔總數的 0.37%,共 75 個開發者)。我們通過這個調查,來確定這些開發者正在使用什麼技術,他們喜歡哪些技術,以及他們對哪些技術感興趣。希望這個報告能幫助你在 JavaScript 生態之中找到適合自己的技術棧。

今年的報告和前兩年不同,取消了 CSS 部分。因爲組織者認爲 CSS 是一個龐大的話題,幾乎可以作爲一個獨立的調查去做。所以這一次的報告就專注於 JavaScript。
除了沒有 CSS 之外,今年的報告主要圍繞着 Flavors、前端框架/庫、數據層、服務端框架、測試框架、Mobile & Desktop和其他工具這幾個方向進行展開調查,我們接下來就分別來看看各個方面的情況是怎麼樣的。

JavaScript Flavors (語言選擇)

-w1229

從上圖中我們可以看到,除了 ES6 之外,TypeScript 是最受歡迎的,遠遠超過其他幾個同類型的。

平均而言,85.9%的受訪者使用過ES6,並樂於再次使用它。
此比率較高的國家/地區顯示爲紅色,較低的國家/地區顯示爲藍色(調查受訪者總數少於20的國家/地區將被省略)。

46.5%的受訪者使用過TypeScript,並樂於再次使用它。
-w1295
Reason 也同樣值得大家關注,在2018年逐漸被越來越多人瞭解使用。因爲 Reason 背後有 Facebook 的支持,並且滿意度也很高。

Front-end Frameworks(前端框架)

在我們的日常開發工作中,前端框架/庫都是不可或缺的,目前我們經常能夠聽到的就是 React、Vue、Angular,除此之外還有其他一些框架/庫,那他們的情況又是怎麼樣的呢?我們一起來看看:
-w1167

通過上圖,我們可以看出,React 還是最受歡迎的,Vue 排名第二,對比去年數據我們可以得出,框架戰場已經由去年“三足鼎立”變成今年的“兩強相爭”。但是從“使用過並且將再次使用”的比例來看,Vue還是相去甚遠,不過接受這個報告的開發者更多是國外的,國內也許這個數據會有所不同。Stateofjs 的數據顯示,兩年前有 27%的受訪者表示從未聽過 Vue,現在這個數據已經降到了 1.3%,在 GitHub 上,Vue 的 star 數已經超越了 React,其未來不可限量。而 Angular 雖然擁有龐大的用戶羣,但逐漸被開發者拋棄,已被 Vue 超越,除非 Google 出大招“相救”,否則 Angular 很難再重返冠亞軍寶座。

下面這張圖表描繪了開發人員對前端庫的滿意程度,以及它們擁有的用戶數量之間的關係:
-w1332
當然還有一些其他庫,有興趣的同學可以自己瞭解一下:
-w1273

Data Layer(數據層)

-w1212

從上圖我們可以看到,雖然 Redux 在原始數量方面佔據主導地位,但我們認爲這種趨勢更有利於 GraphQL 及相關技術。

當然,從理論上講,你可以將 Redux 和 GraphQL 結合使用,但實際上,這種組合最終可能會被特定於 GraphQL 的工具所取代,GraphQL 的客戶端選擇傾向於 Apollo,值得一提的是,最新版的 Apollo 發佈,讓 Redux 變得可有可無,所以明年這個排名可能會有大變化。

我們再來看看其他工具的表現:
-w1259

Back-end Frameworks(後端框架)

-w1243

我們知道,Express 和 Koa 都是同一個作者 TJ 發起的,但是我們從上圖可以看到,“使用它,並將再次使用”的比例來看,Express 還是最受歡迎的,並且遠超於其他框架,值得一提的是 Next.js,雖然它仍無法比擬功能齊備的 Node 後端,但它專注於解決 React 應用的服務器渲染問題的特性,使之受到很多開發者的關注。

Testing(測試)

-w1179
從上圖的報告中我們可以看出,Jest 和 Mocha在受歡迎程度上基本差不多,但是 Jest 還是更受歡迎一些,也許是因爲 React 和 Facebook 的原因,因爲 Jest 可以說是 React 的標配啦,我們看到有 8.4% 的開發者曾經使用過 Mocha,但是以後將不再使用它。

Mobile & Desktop (移動端和桌面應用)

“任何可以用 JavaScript 編寫的應用程序最終都會用 JavaScript 編寫。”JavaScript 不僅僅侷限於瀏覽器了。

-w1167

React Native 和 Electron 是使用 Web 技術構建移動和桌面應用程序的兩個主要解決方案。巧合的是,他們在滿意度和用戶數量上具有相似的數據。Electron 的多功能性(它可以與任何 UI 框架一起使用)可以解釋它獲得如此超高滿意度的原因。

Other Tools(其他工具)

JavaScript生態系統不僅限於庫和框架。我們每天都在使用所有這些小工具,包括用於代碼打包的工具和用於編寫代碼的文本編輯器。

此外,我們還想知道哪些新瀏覽器API正在獲得吸引力; 是的,聽起來很瘋狂,事實證明我們中的一些人也使用不是 JavaScript的語言!

Other Languages (其他語言)

-w1277

Browser APIs (瀏覽器API)

-w1334

Build Tools (構建工具)

-w1290

Utility Libraries (實用程序庫)

-w1258

Text Editors (編輯器)

-w1256

最後我們再來看看受訪者們的看法

-w1205
-w1201
-w1218
-w1192
-w1203
-w1195

結論

2018年大部分是2017年已經觀察到的趨勢的延續。

這對我們來說是個好消息,因爲這意味着我們可以花更少的時間來擔心使用什麼,然後用更多時間實際使用它!

但今年可能會再次變化。雖然前端的所有目前都很平靜,但是如何從數據庫獲取數據到客戶端的問題還遠未解決,GraphQL肯定會開始在該領域製造越來越大的波浪。隨着針對後端和狀態管理層的GraphQL定製解決方案的出現,我們可能很快就會感覺到JavaScript再次在我們的腳下移動。

但就目前而言,沒有必要恐慌。現在是成爲JavaScript開發人員的最佳時機,而且我們願意打賭,2019年會更加清晰!

鏈接:https://2018.stateofjs.com/in...

技術放肆聊公衆號,每日干貨,最前沿的技術知識,掃描下方二維碼關注:

技術放肆聊

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